<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Pages on monkshark.dev</title><link>https://monkshark.github.io/page/</link><description>Recent content in Pages on monkshark.dev</description><generator>Hugo -- gohugo.io</generator><language>ko</language><lastBuildDate>Tue, 14 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://monkshark.github.io/page/index.xml" rel="self" type="application/rss+xml"/><item><title>About</title><link>https://monkshark.github.io/about/</link><pubDate>Tue, 14 Apr 2026 00:00:00 +0000</pubDate><guid>https://monkshark.github.io/about/</guid><description>&lt;h2 id="나"&gt;&lt;a href="#%eb%82%98" class="header-anchor"&gt;&lt;/a&gt;나
&lt;/h2&gt;&lt;p&gt;고등학교 때 Flutter + Firebase로 학교 앱을 1인 개발했다. Java로 프로토타입을 만들다가 Flutter로 넘어왔고, 급식, 시간표, 게시판, 채팅, 성적 관리까지 들어간 앱을 혼자 만들었다.&lt;/p&gt;
&lt;p&gt;코딩은 독학이다. 학교에서 따로 가르쳐주는 건 없었고, 기숙사 자습 시간과 주말에 만들었다. 시험 기간에는 손을 놓고, 끝나면 다시 잡고.&lt;/p&gt;
&lt;h2 id="기술-스택"&gt;&lt;a href="#%ea%b8%b0%ec%88%a0-%ec%8a%a4%ed%83%9d" class="header-anchor"&gt;&lt;/a&gt;기술 스택
&lt;/h2&gt;&lt;style&gt;
.tech-section { margin-bottom: 1.5rem; }
.tech-section h3 { font-size: 0.95rem; margin-bottom: 0.6rem; color: var(--card-text-color-secondary); }
.tech-icons { display: flex; flex-wrap: wrap; gap: 12px; }
.tech-icon {
 position: relative;
 display: inline-flex;
 align-items: center;
 justify-content: center;
 width: 48px;
 height: 48px;
 border-radius: 10px;
 background: var(--card-background);
 box-shadow: 0 1px 3px rgba(0,0,0,0.08);
 transition: transform 0.2s, box-shadow 0.2s;
 cursor: default;
}
.tech-icon:hover {
 transform: translateY(-4px);
 box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}
.tech-icon i { font-size: 28px; }
.tech-icon .tech-tooltip {
 position: absolute;
 bottom: -28px;
 left: 50%;
 transform: translateX(-50%);
 background: var(--card-text-color-main);
 color: var(--card-background);
 padding: 2px 8px;
 border-radius: 4px;
 font-size: 11px;
 white-space: nowrap;
 opacity: 0;
 pointer-events: none;
 transition: opacity 0.2s;
}
.tech-icon:hover .tech-tooltip { opacity: 1; }
&lt;/style&gt;
&lt;div class="tech-section"&gt;
&lt;h3&gt;Language&lt;/h3&gt;
&lt;div class="tech-icons"&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-java-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Java&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-kotlin-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Kotlin&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-javascript-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;JavaScript&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-typescript-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;TypeScript&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-cplusplus-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;C++&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-csharp-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;C#&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-objectivec-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Obj-C&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-dart-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Dart&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-python-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Python&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="tech-section"&gt;
&lt;h3&gt;Mobile&lt;/h3&gt;
&lt;div class="tech-icons"&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-android-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Android&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-jetpackcompose-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Jetpack Compose&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-apple-original"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;iOS&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-swift-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;SwiftUI&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-flutter-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Flutter&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-react-original colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;React Native&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="tech-section"&gt;
&lt;h3&gt;Web&lt;/h3&gt;
&lt;div class="tech-icons"&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-html5-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;HTML&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-css3-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;CSS&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-sass-original colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;SCSS&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-tailwindcss-original colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Tailwind CSS&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-react-original colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;React&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-nextjs-plain"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Next.js&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="tech-section"&gt;
&lt;h3&gt;Backend&lt;/h3&gt;
&lt;div class="tech-icons"&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-nodejs-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Node.js&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-express-original"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Express&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-spring-original colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Spring Boot&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-mysql-original colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;MySQL&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-mongodb-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;MongoDB&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-firebase-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Firebase&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="tech-section"&gt;
&lt;h3&gt;CI/CD&lt;/h3&gt;
&lt;div class="tech-icons"&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-gradle-original colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Gradle&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-githubactions-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;GitHub Actions&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-docker-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Docker&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-kubernetes-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Kubernetes&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-vercel-original"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Vercel&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-junit-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;JUnit&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-codecov-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Codecov&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="tech-section"&gt;
&lt;h3&gt;Tools&lt;/h3&gt;
&lt;div class="tech-icons"&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-intellij-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;IntelliJ&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-webstorm-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;WebStorm&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-rider-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Rider&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-clion-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;CLion&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-vscode-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;VS Code&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-git-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Git&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-github-original"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;GitHub&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-figma-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Figma&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-postman-plain colored"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Postman&lt;/span&gt;&lt;/div&gt;
 &lt;div class="tech-icon"&gt;&lt;i class="devicon-notion-plain"&gt;&lt;/i&gt;&lt;span class="tech-tooltip"&gt;Notion&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="이-블로그"&gt;&lt;a href="#%ec%9d%b4-%eb%b8%94%eb%a1%9c%ea%b7%b8" class="header-anchor"&gt;&lt;/a&gt;이 블로그
&lt;/h2&gt;&lt;p&gt;앱을 만들면서 겪은 것들을 기록하는 곳이다. 기술 선택의 이유, 삽질한 과정, 구조를 바꾼 이유 같은 것들. 튜토리얼이 아니라 개발 일지에 가깝다.&lt;/p&gt;
&lt;h2 id="연락처"&gt;&lt;a href="#%ec%97%b0%eb%9d%bd%ec%b2%98" class="header-anchor"&gt;&lt;/a&gt;연락처
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GitHub&lt;/strong&gt;: &lt;a class="link" href="https://github.com/monkshark" target="_blank" rel="noopener"
 &gt;monkshark&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>아카이브</title><link>https://monkshark.github.io/archives/</link><pubDate>Tue, 14 Apr 2026 00:00:00 +0000</pubDate><guid>https://monkshark.github.io/archives/</guid><description/></item><item><title>검색</title><link>https://monkshark.github.io/search/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://monkshark.github.io/search/</guid><description/></item></channel></rss>