About me
안녕하세요! 신의하입니다.
항상 프로그래밍을 좋아했고, 그래서 프로그래머가 되었습니다.
웹을 좋아하며, 특히 프론트엔드 분야에 관심이 많습니다.
새로운 것들을 찾아보고, 공부하고, 시도해보는 것을 즐깁니다.
Focused Technologies
Experiences
각 항목을 클릭하면 상세 내용이 표시됩니다.
Work Experiences
- Software Engineer @ The Guild
2025.09 ~ 2026.02GraphQL 관련 SaaS를 운영하는 회사인 The Guild에서 풀스택 개발자로 근무하였습니다.
풀스택 엔지니어로써 서비스의 작은 기능들을 개발하거나,
계정 시스템의 구조 마이그레이션을 진행하는 등의 작업을 진행하였습니다.•Account Linking 도입
- React
- GraphQL
- PostgreSQL
- SuperTokens
서비스 계정 하나에 여러 로그인 수단을 연결하여 사용할 수 있도록 개선했습니다.
해당 프로덕트는 기존에 SuperTokens라는 소프트웨어를 사용하여 인증 시스템을 구현하였고,
이로부터 오는 한계로 인해 한 계정당 한 로그인 수단밖에 사용할 수 없는 상태였습니다.이는 한 사람이 여러 로그인 수단으로 서비스에 가입하면서
계정을 여러 개 생성하도록 유도하는 문제를 발생시켰고,
결과적으로 동일한 이메일을 가진 계정을 다수 생성시키며
추가적인 기능 개발 및 확장에 허들로 작용하게 되었습니다.해당 문제를 해결하기 위해 SuperTokens와 독립된
애플리케이션 계층에서 Account Linking을 구현하여
한 계정에 여러 로그인 수단이 연결될 수 있도록 개선하였으며,기존에 중복된 이메일을 가진 사용자들 역시
실 데이터를 기반으로 다양한 엣지 케이스를 고려한
DB 마이그레이션 스크립트 작성을 통해 계정 병합 절차를 진행하도록 하였습니다.
- Software Engineer @ Contents Technologies
2024.07 ~ 2025.08음악 IP 기반 다양한 사업을 진행하는 회사인 콘텐츠테크놀로지스에서 풀스택 개발자로 근무하였습니다.
풀스택 엔지니어로써 신규 사업 프로젝트의 모바일 앱 및 웹앱을 개발하거나,
기존 사업의 레거시 소프트웨어 스택을 재작성하는 등의 업무를 수행했습니다.•BackPac
- TypeScript
- SolidStart
- UnoCSS
- urql
- Rust
- async-graphql
크리에이터 비즈니스를 타겟하는 신사업의 앱 및 서버 개발에 참여하였습니다.
초기에는 모바일 앱을 타겟으로 Capacitor를 활용하여 개발하였으며,
이 과정에서 UX 향상을 위해 스택 내비게이션 라이브러리인 Stackflow를
Solid에 맞개 포팅하여 사용하였습니다.이후 주 타겟을 웹으로 전환하게 되었는데,
기존 코드를 최대한 활용하면서도 데스크탑 환경에서 좋은 UX를 제공하기 위해
stackflow-plugin-omniflow라는 플러그인을 개발하여 사용하였습니다.이외에 Rust를 활용한 GraphQL API 서버 개발에도 참여하였으며,
Semantic Nullability 사용을 통한 프론트엔드 DX 개선을 위해서
async-graphql을 위한 지원 패키지를 직접 개발하여 적용하였습니다.•Fluxus 인프라 재개발
- SolidStart
- Solid Relay
- TailwindCSS
- Rust
- lazycsv
음악 유통 관련 자회사인 Fluxus의 인프라 재개발 작업을 진행하였습니다.
기존 인프라는 외주사를 통하여 개발되어 있었고,
사업 성장에 따라 데이터 크기가 늘어나면서 성능 및 확장성 문제가 발생하여 재개발이 결정되었습니다.신규 인프라의 성능 및 확장성 확보를 위해 스택 리서치 단계부터 적극적으로 참여하였으며,
StarRocks 등의 고성능 OLAP PoC나 자체 고성능 CSV 파서인 lazycsv의 개발 등을 진행하였습니다.이후 프론트엔드를 중심으로 개발 작업을 진행하였으며,
이 과정에서 직접 개발한 라이브러리인 Solid Relay를 활용하여
UX와 DX 양면에서 뛰어난 웹 프론트엔드를 개발하였습니다.또한 GraphQL Tools의 Mocking 기능을 활용하여 API 없이 독립적으로 개발을 진행하였으며,
이 과정에서 GraphQL 스키마 역시 주도적으로 설계하였습니다.
- DX Engineer @ PortOne
2022.10 ~ 2024.07결제 관련 SaaS를 개발하는 회사인 포트원에서 프론트엔드 개발자로 근무하였습니다.
DX 엔지니어로써 회사 내외의 개발자 경험을 향상시키는 데에 집중하였으며,
이외에도 기여할 부분들을 다양한 분야에서 주도적으로 탐색하여 기여하였습니다.•JavaScript SDK 재설계
- TypeScript
- Node.js
- SWC
- esbuild
JavaScript SDK 재설계에 참여하여 성능과 유지보수성 및 사용성을 개선하였습니다.
기존 JS SDK는 단일한 스크립트 파일로 구성되었으며, jQuery에 의존하여 동작하였고,
이는 로딩 성능 하락 및 불필요한 오버헤드의 원인이 되었습니다.이를 해결하기 위해 전체 아키텍처를 다시 구성하였으며, jQuery 의존성을 제거하는 것,
기능별 lazy loading 지원을 구현하는 것 등에 집중하면서도, IE11 지원 등 비즈니스 요구사항 역시 만족하였습니다.이를 달성하기 위해 ESM 지원 없이도 동작하는 커스텀 모듈 시스템을 구현하였습니다.
또한 SDK와 기능별 모듈을 트랜스파일링하고 번들링하는 빌드 시스템을 SWC와 esbuild 등의 최신 도구들을 활용하여 구성하였습니다.
•포트원 애널리틱스
- TypeScript
- React
- UnoCSS
- Framer Motion
- Relay
포트원 콘솔의 새 애널리틱스 대시보드 개발에 참여하였습니다.
개발 과정에서 Framer Motion을 활용하여 커스텀 차트 컴포넌트를 구현하고,
React 18의 Concurrent Features 활용을 위해 Relay의@defer지원을 연동하였습니다.차트 컴포넌트들은 팀에서 요구하는 높은 기준을 준수하여 만들어졌으며,
반응형 디자인, 여러 애니메이션, sticky한 축 레이블 등의 기능들에 집중하여 구현하였습니다.•결제 브릿지 페이지
- TypeScript
- SolidStart
- UnoCSS
고객사 웹사이트에 삽입되는 커스텀 결제창 UI를 만들었습니다.
결제 브릿지 페이지는 PG들의 기본 결제창 UI를 대체하는 커스텀 결제창 UI입니다.
구매자들이 불편한 결제창 경험으로 인해서 결제 과정에서 이탈하는 것을 막기 위해,
최고의 성능과 UX를 제공하는 것에 초점을 두고 SolidStart를 선택하여 구현하였습니다.스트리밍 SSR과 서버 RPC 등의 기능을 활용한 덕에, 30만건 이상의 결제 요청을 처리하는
빠르고 부드러운 결제 페이지를 제작할 수 있었습니다.
- Backend Developer @ NutritionCourt
2021.10 ~ 2022.10AI 헬스케어 스타트업인 뉴트리션코트에서 백엔드 개발자로 근무했습니다.
퇴사 후, 회사에 기존에 계시던 시니어 백엔드 개발자분께서 퇴사하시게 되며
팀에 공백이 생겼고, 도움을 요청받아 합류하게 되었습니다.포지션은 백엔드 개발자이지만, 모바일 앱을 유지보수하거나 프론트엔드 신입 교육을 담당하고
업무를 분배하여 함께 진행하는 등 풀스택 개발 업무를 진행했습니다.•Welcoach 앱 개발 및 유지보수
- Flutter
- GetX
- Node.js
- GraphQL
- Mercurius
- Prisma
- Elasticsearch
기존에 개발했었던 웰코치 어플리케이션에 간편 인증 등의 기능 추가, 사용성 개선을 진행했습니다.
백엔드 개발자로 합류하였지만, 회사 전략상 앱을 지속적으로 개선해야 하는 상황에서
유일하게 앱 관련 지식을 가지고 있던 개발자였기에 유지보수 작업을 진행하게 되었습니다.•웰코치샵 API 백엔드 개발
- Node.js
- Fastify
- Envelop
- GraphQL
- Schema Stitching
- Terraform
- AWS EKS, RDS, SQS, etc.
Shopify 기반 이커머스의 다양한 확장 기능 구현을 위한 MSA 백엔드를 개발했습니다.
GraphQL Tools의 Schema Stitching 기능을 활용하여, 여러 마이크로서비스들로 구성된 도메인별 API를
프론트엔드에서 손쉽게 사용할 수 있는 단일 Supergraph API로 제공하였습니다.미국의 SBN 사와의 API 연동을 통해 쇼핑몰에서 검진 상품을 구매한 고객들이 검사소에서 혈액 검사를 받고,
이 결과를 기반으로 한 리포트를 받아보는 전체 흐름을 구현하였습니다.•웰코치샵 프론트엔드 개발 지원
- Shopify Liquid
- React
- Svelte
- Relay
- Vite
- WindiCSS
- Astro
Shopify 기반 이커머스 구현 단계에서 요구된 다양한 프론트엔드 작업들을 지원하였습니다.
Shopify의 테마 기능을 활용하여 구축한 쇼핑몰에 Liquid 템플릿 코딩과 ESM 등을 포함한 모던 바닐라 JS 활용,
상황에 따라 Svelte를 활용한 별도 컴포넌트 개발을 통해 동적 기능 추가, 레이아웃 조정,
WYSIWYG으로 재사용 가능한 컴포넌트 추가 등의 작업을 진행하였습니다.또한, 외부 시스템과의 연동 과정에서 필요해진 검사자 정보 등록 페이지나 혈액 검사 리포트 페이지 등의 페이지를
개인 개발 중이던 React & Relay 기반 프레임워크인 Vilay를 활용하여 개발하였고,
이 과정에서 프레임워크의 개선 작업 역시 함께 진행하였습니다.프론트엔드 개발 과정의 대부분은 동료 프론트엔드 전담 개발자분과 함께 진행하였으며,
신입이셨던 특성상 각종 멘토링과 코드 리뷰를 겸하며 작업하였습니다.
- Frontend Developer @ NutritionCourt
2020.09 ~ 2021.07AI 헬스케어 스타트업인 뉴트리션코트에서 프론트엔드 개발자로 근무하였습니다.
소규모 스타트업 특성상 프론트엔드 외에도 다양한 분야의 개발 작업을 진행했습니다.
•Angular 기반 프로젝트 Vue로 재작성
- TypeScript
- Vue.js 2
- Bootstrap 4
- SCSS
- Google App Engine
기존 Angular 2 기반으로 개발되어 있던 MVP 제품을 Vue 2 기반으로 재작성하였습니다.
건강검진 결과 수치를 입력하면, 해당 데이터를 분석하여 식단 추천을 포함한 리포트를 보여 주는 웹앱을 작업하였습니다.
Bootstrap 4와 SCSS를 사용하여 반응형 디자인을 적용하여 개발하였습니다.•Angular 기반 프로젝트 Nuxt로 재작성
- TypeScript
- Nuxt.js
- Bootstrap 4
- SCSS
- Python
- Falcon
- Google App Engine
기존 Angular 2 기반으로 개발되어 있던 B2B 제품을 Nuxt.js 기반으로 재작성하였습니다.
병원에서 환자 예약부터 진료, 혈액검사 예약, 문진 작성, 리포트 제공, 투약 알림까지
전 과정에 대한 의사 대상 UI와 환자 대상 모바일 웹앱을 작업하였습니다.원활한 SSR을 위해 Prefetch 등의 최적화를 진행하였습니다.
또한 작업 중 API 백엔드인 Falcon 기반 Python 코드의 유지보수 및 기능 추가도 같이 진행하였습니다.
•Welcoach 앱 개발 및 유지보수
- Flutter
- GetX
- Node.js
- GraphQL
- Mercurius
- Prisma
- Elasticsearch
혈액검사 기반 맞춤 건강관리 솔루션을 제공하는 앱을 개발하였습니다.
공인인증서 로그인을 통해 건강보험공단에서 건강검진 데이터를 불러오고,
이를 자체 구현한 알고리즘을 통해 분석하여 맞춤 식품/건강기능식품 솔루션을 제공하는 방식으로 구성하였습니다.약간의 DevOps 작업을 제외하면 전부 혼자 개발하여, Play 스토어 출시까지 성공적으로 진행하였고,
이후 유지보수 작업을 약 1달간 진행하였습니다.
Open Source Contributions
Education
- Software Development B.S. @ Full Sail University
2019 ~ 202120개월 단기집중과정을 통해 3.77/4.0의 학점으로 수석 졸업하였습니다.
2019년에는 미국에서 현지 학생들과 함께 현장 수업을 수강하였으며,
2020년 초부터는 COVID-19로 인하여 한국에서 온라인 수업을 진행하였습니다.운영체제, 자료구조, 동시성 프로그래밍, MIPS 어셈블리 등 각종 CS 지식을 다지는 데에 도움이 되었습니다.
- 엘비오티 기독혁신스쿨
2014 ~ 2018독서 중심의 기독대안학교에서 중•고등학교 통합 과정으로 졸업하였습니다.
독서와 사회 이슈 분석을 통한 가치관 확립과, 자기주도학습 특성상 넉넉했던 자기계발 시간이
내면과 프로그래머로서의 역량 성장에 많은 도움이 되었습니다.이외에 학생들을 대상으로 소규모 코딩 스터디를 구성해 기초적인 코딩을 알려 주거나,
공식 코딩 과목에서 조교로 활동하며 뒤처지는 아이들을 돕는 등
코딩 교육 측면에서도 많은 시도와 귀중한 경험이 있었고,
비개발자들과의 개발 관련 의사소통에서 유의미한 도움을 준다고 느끼고 있습니다.비인가 대안학교는 공식적인 중•고등학교로 인정되지 않기 때문에,
중•고등학교 모두 검정고시를 통해 학력을 인정받았습니다.