채용공고 올리기

강수진님을 응원해보세요!

이직/구직 중이에요
책임감
협업 지향
목표 지향적
효율적
리더십

미리보기

기본 정보

이름
강수진
직업
프론트엔드 개발자
이메일
jin8898344@gmail.com
간단 소개

주도적인 성향으로 개발을 즐기고, 효율적으로 공부하는 방법을 위해 끊임없는 시도를 합니다. 한 분야에 진지하게 임하며 본인의 속도로 책임감 있게 오랫동안 갈고 닦습니다. 끊임없는 질문과 피드백으로 공부한 것을 명확히 이해하려고 노력합니다.

기술 스택

기술 스택

React, JavaScript, GitHub, TailwindCSS, styled-components, supabase, Next.js, TypeScript

경력

회사명

루덴시티

직급 | 부서 | 근무 유형

인턴 | 개발팀

근무 기간

2025.03. ~ 2025.03. (1개월)

담당 업무
  1. 폼 입력 및 유효성 검사 개선
    ◦ 최적화된 로딩을 위해 React Hook Form을 도입하고, 기능을 극대화하기 위해 유효성 검사까지 포함하여 실시간 검증 구현
    ◦ Controller와 trigger를 활용한 실시간 유효성 검사 설계
    ◦ 항목별 검증 로직을 간소화하여 사용자 입력 오류 방지 및 개발 효율 개선

  2. 상태 관리 및 API 최적화
    ◦ Axios + React Query를 활용해 콘텐츠 승인/반려 상태에 대한 mutate 처리 구현
    ◦ query invalidation을 통한 데이터 동기화 및 UX 흐름 최적화
    ◦ 에러 핸들링 및 optimistic update 적용을 통한 안정적인 요청 처리 구현

  3. 파일 업로드 및 미리보기 기능
    ◦ Axios 기반의 이미지/영상 업로드 기능과 실시간 미리보기 기능 구현
    ◦ 콘텐츠 등록 전 결과 확인을 위한 Shadcn UI 기반 미리보기 모달 구성
    ◦ 백엔드 API 명세서를 바탕으로 정확한 파일 처리 로직 구현

  4. 컴포넌트 리팩토링 및 성능 개선
    ◦ 성능 비교 후 react-select 도입 및 useEffect 최적화를 통한 렌더링 지연 문제 해결
    ◦ Zustand persist 적용으로 새로고침 시 데이터 초기화 방지 기능 구현
    ◦ 라이브러리 기능을 적극 활용한 반복 작업 감소 및 생산성 향상

  5. 권한 기반 UI 제어 및 사용자 경험 향상
    ◦ 사용자 Role(MASTER, WRITER)에 따른 접근 권한 설정 및 조건부 렌더링 구현
    ◦ 실무 수준의 UX 설계 및 사용자 중심의 UI 분기 구조 설계

  6. CI/CD 이슈 대응 및 협업 경험
    ◦ GitHub Actions 배포 환경에서 발생한 로컬-서버 간 빌드 차이 문제 분석 및 디버깅 브랜치 구성
    ◦ 백엔드와의 협업을 통한 문제 원인 파악 및 대응 전략 수립
    ◦ CI/CD 환경에서 발생할 수 있는 배포 이슈에 대한 실무적 대응 경험 확보

프로젝트

프로젝트명

Smit

소속/기관명

프로젝트 팀장 / 프론트엔드 5명, 디자이너 2명

프로젝트 기간

2024.11. ~ 진행 중

프로젝트 내용

Description

기존 플랫폼의 한계를 극복, 모집과 관리 기능을 통합한 스터디 서비스


Experience

  1. 회원가입 유효성 검사와 타입 안정성 강화

    1. 데이터 검증과 타입 안정성 개선

      • React Hook으로 유효성 검사를 진행했으나 코드가 많아지고 복잡해지는 문제 발생

      • Zod를 선택 : 스키마 기반의 데이터 유효성 검사, TypeScript와의 우수한 호환성 때문에 선택

      • 코드가 간결해지고 코드량 60% 감소

    2. 폼 상태 관리와 유효성 검사를 간편화하며 성능을 최적화

      • 사용자가 비밀번호를 입력할 때 마다 실시간으로 정교한 유효성 검사가 진행되어야 할 필요성 확인

      • React Hook Form 도입 : trigger와 resolver를 활용해 필드별 동적 유효성 검사를 구현

      • 이메일, 비밀번호, 생년월일 등의 입력값 스키마를 정의하고, 유효성 검증 코드를 통합하여 코드 중복 제거

  2. 상태 관리 및 API 최적화

    1. 웹 사이트의 성능 향상과 검색 엔진 최적화를 위해 SSR 도입

      • SSR을 도입하기 위해 Next.js를 사용

    2. Zustand를 사용

      • Context나 Redux를 사용하기엔 보일러 플레이트가 너무 많고 코드가 복잡하였기 때문에 간단한 상태 관리 도구 선택

      • 사용성과 코드 간소화 측면에서 다른 상태 관리보다 유리하다고 생각

      • Props를 내릴 필요나 과도한 보일러 플레이트를 작성할 필요가 없어지는 효과

    3. React Query 사용

      • Next.js로 코드를 짰더니 API 함수가 복잡하고 양이 많아지는 현상 발견

      • 코드가 간소화되고 쉬워짐, isError나 isLoading을 통해 에러나 로딩도 관리할 수 있게 되어 코드의 안전성 증가

    4. 두 상태 관리 도구를 결합하여 클라이언트 및 서버 상태를 체계적으로 관리

      • Zustand로 Client 쪽 상태를, 서버 상태 관리에 특화된 React Query로 Server 쪽 상태만을 관리하는 방식 사용

    5. Supabase API를 활용해 사용자 인증 상태와 데이터를 효율적으로 동기화

  3. 소셜 로그인 도입

    1. 백엔드 개발자가 없어 BaaS 플랫폼 사용 : Firebase와 Supabase 두 개 비교

      • Supabase 채택 :

        • Next.js를 활용한 Server Component의 이점을 최대한 활용할 의도

        • 자체 라이브러리를 제공

        • app router server, Client component에서 더 잘 작동하고 가이드 문서를 참고하기 용이한 효과

    2. Google 및 Kakao OAuth 사용

      • 사용자 편의성을 극대화할 수 있는 필수 기능

      • Supabase와의 높은 호환성

    3. signInWithOAuth API를 사용

      • 소셜 로그인 기능을 구현

      • Supabase Auth와 클라이언트 상태를 연동하여 인증 흐름을 간소화

    4. 배포 환경에서 발생한 리다이렉트 URI 설정 문제

      • 배포 환경과 개발 환경의 환경 변수 설정을 통해 해결

  4. UI/UX 최적화

    1. Tailwind CSS

      • TailwindCSS를 활용한 스타일링

        • 대규모 프로젝트에 적합한 유틸리티 기반 스타일링 구현.

        • 반응형 디자인을 통해 모바일 및 데스크톱 환경에서 최적화된 UI 제공.

      • 사용자 피드백 반영

        • 총 12건의 피드백을 바탕으로 UI를 개선하고 설문조사를 통해 90% 이상의 사용자 만족도를 달성.

  5. 트러블 슈팅

    1. 문제:

      • Supabase auth.signUp에서 사용자 정보가 user 테이블에 저장되지 않는 오류 발생

    2. 해결 과정:

      • 트랜잭션 문제를 확인

      • Supabase의 상태 동기화 로직을 재구성하여 데이터 불일치를 해결

    3. 성과:

      • 사용자 등록 프로세스 안정화

포트폴리오

URL

link

GitHub

깃허브
link

기술 블로그

티스토리

자기소개

자기소개

무한한 피드백과 도전으로 진득하게 실력을 쌓아가는 개발자, 강수진입니다.

1. 부트캠프 1달만에 100명 앞에서 강의하다

프로그래밍 부트캠프에서 제가 실천했던 학습법을 발표하며 100명 이상의 동료와 경험을 나눈 적이 있습니다.

온라인으로 캠프를 종일 진행하다 보니 집중을 하는 데 이슈가 있었기 때문에, 프로젝트를 봐주시는 튜터님에게 1시간에 1번

씩 다음 시간 계획, 이번 시간 공부한 내용, 궁금한 점을 보고하는 학습법을 만들었습니다.

발표는 큰 호응을 얻었고, 이후 동료들이 제 학습법을 응용하여 이용하기도 하고 부트캠프에서 수강생 전체에 제 학습법을 시

간만 변경해서 적용하기도 했습니다. 그러한 모습을 보며 내가 공유한 지식이 다른 사람의 성장에 기여할 수 있다는 점에서 보

람을 느꼈습니다. 또한 이를 기회로 발표의 전달력, 친화력 등을 인정받아 수료 후에도 대표 수료생으로 후배 기수에게 학습법

과 취업에 대한 조언을 주제로 발표하기도 했습니다. 이 경험은 명확한 소통의 중요성과 함께 지식을 나누는 즐거움을 배우는

계기가 되었습니다.

2. 각자의 개발 속도가 달랐을 때 팀장으로서 해결한 방법

최종 프로젝트에서 팀장으로 활동하며 팀원 간 의견 조율과 일정 관리에 주력했습니다. 각자의 작업 속도가 달라 진행에 차질

이 생겼었는데, 작업 속도가 빠른 팀원들을 설득하고, 느린 팀원은 격려하며, 저도 솔선수범하여 추가 작업을 맡는 등 작업량을

조절했습니다.

그 결과 프론트엔드 5명으로 1달 만에 28개의 기능을 포함한 대형 프로젝트를 완수하는 성과를 얻었습니다. 이 경험을 통해

협업과 소통의 중요성을 다시 한번 체감하며, 주도적으로 팀을 이끄는 리더십을 키울 수 있었습니다.

3. 비전공자의 미술 공부, 2개의 수상 경력

저는 미술 전공생이 아닙니다. 하지만 미술을 배우는 동안 수상 경력이 2회 있었습니다. 3년 동안 주 2회 꾸준히 화실을 다니

며 조급함을 가지지도, 누군가와의 비교도 하지 않고 끊임없는 피드백과 함께 꾸준히 시도하는 것이 비결이었는데, 이 방법이

저에게 가장 빠른 실력 상승의 길이라는 것을 깨닫고 개발에 대해서도 이 무한한 도전을 적용하는 중입니다. 부트캠프를 수료하

면서 부족한 시간과 전공 지식이 아닌 개발 지식들에 부딪혀 좌절도 많이 했지만, 저만의 학습법을 개발하고 팀 과제에 성실하

고 적극적으로 참여하며 실력을 향상시켰습니다.

저는 다양한 경험을 바탕으로 적극성, 꾸준함, 회복 탄력성을 키워왔습니다. 이제는 개발을 제 길로 삼고 다시 진득하게 공부하

고, 부딪히고,프로그래밍해내고 있습니다. 배움과 성장을 멈추지 않고, 회사와 팀의 발전에 기여하는 개발자가 되겠습니다.

교육

소속/기관명

스파르타코딩부트캠프

종류 | 전공

사설 교육 | 프론트엔드

재학 기간 | 재학 상태

2024.07. ~ 2024.11. | 졸업

소속/기관명

봄아카데미

종류 | 전공

사설 교육 | UX/UI디자이너

재학 기간 | 재학 상태

2023.06. ~ 2023.12. | 졸업

소속/기관명

성신여자대학교

종류 | 전공

대학교(학사) | 문화예술경영학과

재학 기간 | 재학 상태

2016.03. ~ 2020.02. | 졸업

대외활동

활동명

2021 여성벤처창업 케어 프로그램 비즈콘테스트 본선 진출

소속/기관명

개인

연도

2021

내용

와인 구독 서비스 아이디어로 팀원 3인 구성으로 창업 콘테스트에 본선 진출하였습니다.

팀장 역할을 맡았고, 제품 디자인 및 기획 전반을 담당했습니다.

활동명

2018 서울시 청년 일자리 해커톤 인기상

소속/기관명

개인

연도

2018

내용

팀원 4인 구성으로 박물관 큐레이터 서비스를 기획하여 해커톤에서 인기상을 수상하였습니다.

팀장 역할을 맡았고, 기획 전반과 발표 자료 제작을 맡았습니다.

활동명

제 18회 전국 호수예술제 미술공모 일반부 금상

소속/기관명

개인

연도

2018

내용

수채화 작품으로 미술공모에서 금상을 수상하였습니다.

활동명

제 1회 몽마르아트 수채화 공모전 특선

소속/기관명

개인

연도

2018

내용

수채화 작품으로 공모전에서 특선을 수상하였습니다.

댓글