채용공고 올리기

강신욱님을 응원해보세요!

지금 만족하고 있어요

미리보기

기본 정보

이름
강신욱
직업
프론트엔드 개발자
이메일
tlsdnrng@gmail.com
간단소개

Next.js를 활용한 웹 개발 및 운영 경험과 React Native를 통한 Android·iOS 앱 개발 및 운영 경험이 있습니다. 출시한 여러 서비스에서 앱 MAU를 200% 이상, 웹 MAU를 400% 이상 증가시키는 데 기여했습니다. 사용하고 싶은 서비스를 위해, 아름다운 인터페이스와 편리한 UX를 추구합니다. 개발자로서 제안할 수 있는 아이디어나 고려 사항을 팀원들과 적극적으로 공유하고, 사용자 경험을 최우선으로 두어 대기 시간을 최소화하는 방향으로 개발하고자 노력합니다. 현재는 팀원으로써 성장할 수 있는 기회를 찾고 있습니다. 어려운 기능 구현, 새로운 기술 도입, 협업 방식과 개발 문화 등에 대해 팀원들과 활발히 논의하며, 함께 발전할 수 있는 환경이라면 정말 행복할 것 같습니다.

기술 스택

기술 스택

경력

회사명

코워크위더스주식회사

직책 • 부서

팀원 • 프론트엔드

담당 업무
  • Next.js 기반 PC·모바일 웹 및 웹뷰 구인·구직 서비스 개발

  • React Native 기반 Kowork 모바일 앱 개발 및 출시

  • 플랫폼 운영 및 지속적 기능 개선

  • Mixpanel·Google Analytics(GA) 기반 백오피스 대시보드 구축

근무 기간 (근무 형태)
2023.11. ~ 재직 중

(1년 8개월 | 정규직)

프로젝트

소속/기관명

코워크위더스주식화시

프로젝트명

이미지 최적화를 위한 CDN 도입

프로젝트 내용

1. 문제

  • Next.js 애플리케이션이 가동 시간이 길어질수록 응답 속도가 저하되기 시작하였고 결국 502 Bad Gateway까지 도달하며 서비스가 멈춤

2. 원인 파악

  1. PM2 클러스터링

    • 인스턴스 2개로 확장, max_memory_restart 옵션으로 메모리 초과 시 자동 재시작.

  2. 메모리 누수 추적

    • nGrinder 부하 테스트 + Chrome Inspertor로 누수 여부 확인

  3. 실행 중인 환경 탐색

    • 서버에 접속해 .next 디렉터리 확인 중 캐시 만료 1년 설정임에도 불구하고 이미지가 다수(7 건) 재생성 → 이미지 캐시 미스로 과부하 유발 판단.

3. 해결

  • NextJS 서버는 ISR 처리, 서버 컴포넌트 응답, HTML 서빙 등의 역할에 집중해야한다고 판단

    • 전문적인 이미지 처리 필요

  • CloudFront + Lambda@Edge 기반 CDN 구축

    • S3 원본에 저장된 원본 이미지를 Sharp 라이브러리를 사용한 서버리스 핸들러로 변환·압축·리사이즈

    • 변환 결과를 CloudFront 캐시에 장기 보존 및 S3에 저장하여 재처리 방지

4. 성과

  • 1 ~ 3일마다 재부팅되던 서비스가 안정적으로 개선 무중단 운영

  • 이미지 최초 로드 시간 LCP 지표 3.6초 → 0.8초로 개선

  • 서버 운영 비용 30% 감소

5. 성장한 점

  • 급한 작업이지만 대안이 있는 경우에는 굳이 하지 않아도 된다

프로젝트 기간
2025.02. ~ 2025.02.
(1개월)
소속/기관명

코워크위더스주식회사

프로젝트명

NextJS의 로그인 문제 해결

프로젝트 내용

1. 문제

  • NextJS의 복잡한 렌더링 구조

    • 서버 컴포넌트와 클라이언트 컴포넌트가 혼재하면서 “로그인 상태”를 판별하기 까다로움.

    • 클라이언트 전용 로직에 의존할 경우, 사용자는 페이지가 그려진 뒤에야 로그인 여부가 결정됨.

  • Firebase 인증 한계

    • Firebase 로그인 정보는 node 서버 측에서 직접 파싱할 수 없음

2. 초기 시도

  • 서버 - Middleware에서 토큰 존재 여부로 로그인 상태를 추론하여 사전 리다이렉트

  • 클라이언트

    • auth.authStateReady + Suspense를 활용하여, Firebase 인스턴스 생성시 클라이언트에서 전역적으로 로딩 UI 표시

3. 추가 문제

  • 구직자 기능 확장으로 인해 유저 정보가 선택적으로 필요한 정보들이 늘어났음

    • 해당 기능이 필요없는 경우에도 기다려야했음 → UX 저하

    • SEO 최적화에 불리하였음

4. 해결

  • 전역 Suspense를 제거하고, 상태관리를 통해 필요한 경우에만 Loading을 띄우도록 개선

5. 배운 점

  • 최신 기능이 항상 옳은 것은 아니고, 상황에 맞는 최선의 선택이 있다는 것을 체감하였음

  • 프로젝트 상황(SSR/CSR 구조, 인증 방식)에 맞춰 선택적 적용이 중요함

프로젝트 기간
2024.01. ~ 2024.06.
(6개월)
소속/기관명

코워크위더스

프로젝트명

앱 에러율 개선

프로젝트 내용

1. 문제

  • 실사용 환경에서 발생하는 React Native 오류를 JavaScript 레이어에서 정확히 수집·파악할 방법이 없었음

2. 시도한 해결책

  • 대안 검토

    • 모바일 빌드 환경(native)의 오류를 JS로 추적할 수 있는 Sentry, Bugsnag이 세팅

  • Sentry 채택 - 웹에서 사용 중인 NextJS를 전용 SDK를 제공해 전문적으로 지원한다고 판단

3. 성과

  • 발생하고 있는 에러를 Sentry로 정확하게 파악할 수 있었음

  • 입사 전 5%까지 올라갔던 React Native 에러 발생율을 0.9%까지 감소

프로젝트 기간
2024.01. ~ 2024.06.
(6개월)
소속/기관명

코워크위더스주식화사

프로젝트명

스토리북을 통한 QA 업무 효율 증가

프로젝트 내용

1. 문제

  • 복잡한 QA 시나리오

    • 회원 탈퇴 후 재가입처럼 재현하는데 시간이 소요되는 시나리오를 테스트할 때마다, QA 시간이 과도하게 소모됨

2. 시도한 해결책

  • floating Button

    • 버튼 한 번으로 탈퇴-재가입등의 로직을 실행하도록 구현

    • 테스트 전용 계정을 사전에 여러 개 생성해 공유

    • 한계

      • 배포해야할 코드에 임시 로직이 혼입되어 코드베이스 및 커밋이 복잡해짐

      • 개발자 개인이 가지는 부담이 너무 컸음

  • 스토리북 도입

    • props의 이름을 조정하여, 상황에 따른 UI 테스트를 진행할 수 있게 하였음

3. 성과

  • QA 시간 단축 및 팀원의 업무 진행효율 증가

  • 컴포넌트를 스토리로 명시하게 되면서 코드 품질 향상

프로젝트 기간
2024.01. ~ 2024.06.
(6개월)
소속/기관명

코워크위더스주식회사

프로젝트명

지표의 정량적인 측정을 위한 믹스패널 도입

프로젝트 내용

1. 문제점

  • DAU·MAU, 마케팅 성과, 제휴 배너 클릭률 등 핵심 지표를 정확히 측정하기 어려움

  • 사용자 행동을 세분화·추적하는 데 제약이 많았음

2. 시도한 해결책

  • Google Analytics(기존) 개선

    • 장점:

      • 비개발자도 웹에서 원하는 트리거를 손쉽게 추가 가능

    • 한계:

      • 대시보드 구성 과정이 복잡하고 러닝 커브가 높음

      • 앱(Android·iOS)에서는 비개발자가 트리거를 삽입하기 어려움

  • Mixpanel 신규 도입

    • 장점:

      • 실시간으로 갱신되는 대시보드

      • 커스텀 속성 추가 후 드롭다운에서 즉시 필터·세그멘트 설정 가능

    • 한계:

      • 이벤트 스키마 정의·연동을 전적으로 개발자가 담당해야 함

3. 성과

  • 팀 내에 원하는 데이터를 쉽게 확인할 수 있는 대시보드 구성

  • 백오피스 운영 어려움 해소

프로젝트 기간
2024.01. ~ 2024.06.
(6개월)

교육

소속/기관명

삼성청년소프트웨어아카데미

종류 | 전공

사설 교육 | 비전공 Python

재학 기간

2022.07. ~ 2023.06.

재학 상태

수료

자기소개

자기소개

Skills

  • 자바스크립트

    • 클로저, 고차함수의 특징을 알고 있습니다.

    • 이벤트 루프와 비동기 코드의 작동 방식을 이해하고 있습니다.

    • ES6+ 문법에 익숙합니다.

  • HTML/CSS

    • SEO 최적화 경험이 있습니다

    • Tailwind를 통한 CSS Framework를 잘 사용할 수 있습니다.

    • 애니메이션을 포함한 대부분의 css 요구사항을 처리할 수 있습니다.

  • 타입스크립트

    • 조건부 타입, 함수, promise, 제네릭 등의 타입 활용에 익숙합니다.

    • extends, infer 등을 통한 타입 추론을 할 수 있습니다.

  • 리액트

    • 리액트 훅의 작동원리를 이해하고 있습니다.

    • React Fiber에 대해 이해하고 있습니다.

    • 서버 컴포넌트와 클라이언트 컴포넌트 간의 소통 방식을 이해하고 있습니다.

    • React Query의 dehydrate를 적용할 수 있습니다.

  • NextJS

    • Pages Router에서 App Router로 마이그레이션한 경험이 있습니다.

    • 서버 컴포넌트, SSR, 클라이언트 컴포넌트 간의 차이를 명확히 이해하고 있습니다.

    • ISR, SSG를 적절하게 활용할 수 있습니다.

  • Etc

    • CloudFront, Lambda@Edge를 통해 이미지 최적화를 할 수 있습니다.

    • GitHub Actions를 활용하여 CI를 구성할 수 있습니다.

    • sentry, newrelic을 통해 디버깅 및 성능 측정을 하고 개선한 경험이 있습니다.

댓글