채용공고 올리기

박성호님을 응원해보세요!

좋은 제안에 열려있어요

미리보기

기본 정보

이름
박성호
직업
백엔드 개발자
간단 소개

읽기 쉽고, 유지보수가 편하고, 유연한 코드를 작성하고자 합니다.

기술 스택

기술 스택

React, MySQL, Node.js, Express, NestJS, JavaScript, TypeScript, TypeORM

경력

회사명

그로테스큐

직급 | 부서 | 근무 유형

교육생 | 개발팀

근무 기간

2021.01. ~ 2021.06. (6개월)

담당 업무

채용전환형 인턴으로 입사하였습니다. 6개월 동안 프로그래밍 기초(POCU 1500) 과정 및 React, AdonisJS 기반 토이 프로젝트를 진행하였습니다.

회사명

그로테스큐

직급 | 부서 | 근무 유형

사원 | 개발팀

근무 기간

2021.07. ~ 2022.06. (1년)

담당 업무

React, AdonisJS(Node.js) 를 활용하여 외주 업무를 수행하였습니다. 주요 프로젝트로는 키즈노트 스마트주문 웹앱 페이지 제작이 있습니다.

회사명

병원사람들

직급 | 부서 | 근무 유형

팀장 | 개발팀

근무 기간

2022.07. ~ 2022.12. (6개월)

담당 업무

간호사 및 간호학생을 돕는 스타트업 병원사람들의 널스빌리지 초기 개발자로 합류하였습니다. 간호 정보 큐레이션 기반 반응형 웹사이트를 제작하였습니다. React, NestJS, AWS 등을 활용하였습니다.

회사명

그로잉랩

직급 | 부서 | 근무 유형

크루 | 개발팀

근무 기간

2023.02. ~ 2023.06. (5개월)

담당 업무

상장기업의 재무제표를 다루는 버틀러 서비스의 API 및 재무제표 데이터 처리를 담당하였습니다. Hapi(Node.js), AWS, Mysql, Redis, Playwright 등을 활용하였습니다. 증권시장 상장사의 재무정보 및 가격정보 데이터를 가공하여 사용자에게 제공했습니다.

프로젝트

프로젝트명

유치원 어린이집 알림장 서비스 웹앱 프론트화면 구축

소속/기관명

그로테스큐

프로젝트 기간

2021.12. ~ 2022.06.

프로젝트 내용

유치원 어린이집 알림장 서비스의 웹앱 프론트화면을 구축하는 서비스입니다. CRA 와 styled-component, Antd 를 이용하여 약 6개월 가량 구축했습니다. 해당 프로젝트는 프론트는 회사가, 백엔드는 고객사가 담당하여 소통이 중요했습니다. 처음에는 프론트 2명이 들어와 한 명은 프론트, 저는 어드민을 맡았었는데 중간에 너무 힘들어 헤서 프론트 담당자는 프로젝트에서 하차했습니다. 결국 도메인 지식이 있는 제가 남아서 프론트와 어드민 모두 6월(3차 프로젝트) 까지 마무리지었습니다. 생각보다 어려웠던 부분은 다음 주소 검색 기능, 토스 결제 및 고객사 자체 빌링시스템 붙이기 였습니다. 둘 다 라우팅 처리 과정이 복잡해 애먹었던 기억이 있습니다. 그래도 라우팅 관련해서 많은 경험을 할 수 있었던 프로젝트였습니다.

프로젝트명

신규 프로덕트 구현

소속/기관명

병원사람들

프로젝트 기간

2022.07. ~ 2022.11.

프로젝트 내용

정보 큐레이션을 기반으로 하는 신규 프로덕트 입니다. 프론트는 React(CRA, react 18), emotion, jotai, react-router-dom v6 를 사용했습니다. 어드민은 CRA + Antd 를 사용했습니다. 백엔드는 NestJS(v9) 와 Typeorm(v0.3), Mysql 8버전 을 사용했습니다. 서버는 AWS 로 구축했는데, 퍼블릭에 bastion server 를 한 대 놓고, nginx 를 통해 도메인에 맞는 private ec2 로 연결했습니다. 서비스 자체가 어렵지는 않았지만 혼자서 피그마를 보며 DB, 화면, 서버를 모두 구현하느라 부담이 많이 되었던 서비스입니다. 특히 NestJS 와 Typeorm 이 최근에 업데이트 되어 찾을 문서가 거의 없었던 것도 어려움을 가중시켰습니다.
*이후 방향이 앱 중심으로 바뀌어 개발 중단되었습니다.

프로젝트명

버틀러 서비스 신규기능 개발

소속/기관명

그로잉랩

프로젝트 기간

2023.02. ~ 2023.06.

프로젝트 내용

평소 금융 도메인에 관심을 가지고 있어 입사하게 되었습니다. 회사에서는 API 개발 및 DB 관리를 담당했습니다. 신규 API 개발, playwright 를 이용한 데이터 스크래핑, API Server Typescript 코드로의 전환, DB 쿼리 개선 등을 진행하였습니다. 재직 당시 개발 기능은 다음과 같습니다.

  • Hapi 프레임워크에서, javascript 로 개발된 코드를 typescript 로 변환 및 프레임워크 버전 업그레이드
  • DART의 내부자거래, 배당, 기업설명회 raw 데이터 스크래핑 및 API 개발 (playwright)
  • 수주잔고 DB 설계 및 API 개발 (hapi, mysql, OpenDart)
  • 시각화 데이터 생성 성능 개선
  • 인덱싱을 통한 쿼리 속도 개선

포트폴리오

URL

link

github

깃허브
link

velog

URL 링크

교육

소속/기관명

POCU 아카데미

종류 | 전공

사설 교육 | POCU 1500 (C#)

재학 기간 | 재학 상태

2021.01. ~ 2021.04. | 수료

소속/기관명

서울대학교

종류 | 전공

대학교(학사) | 자유전공학부(경제학, 철학)

재학 기간 | 재학 상태

2013.03. ~ 2022.02. | 졸업

외국어

외국어명

영어

점수

일상 회화 가능

자기소개

자기소개

안녕하세요. Javascript(Typescript) 를 사용하고 있는 2년차 개발자입니다. 프론트는 React, 백엔드는 NodeJS 기반 프레임워크(AdonisJS, Express, NestJS) 를 사용 중입니다. 별도의 부트캠프 과정 없이, 2021년 인턴으로 입사해 SI, 초기 스타트업, B2C 스타트업에서 일하며 다양한 코드를 읽고 작성하며 성장 해 왔습니다. 안정성과 트렌드 사이에서 균형을 맞추며, 프로덕트에 필요한 사항을 빠르고 정확하게 구현해내는 개발자가 되고자 합니다.

이력

그로테스큐

첫 직장에서는 React, Antd, AdonisJS(express 기반), styled-component 를 사용했습니다. 회사 대표님은 항상 "이전에 쓰던 코드 보지 말아라. 시니어라도 전부 아는 게 아니다."라는 말을 입에 달고 사셨습니다. 1년차였던 저는 어서 옛날 코드를 보고 그것을 바탕으로 빨리 코드를 짜고 싶은데, 그러지 못해 답답했습니다. 이전 코드 대신 사용하는 프레임워크의 도큐먼트를 찾아 읽고 적용했습니다. 그 때는 비슷한 거 만들거면 같은 코드 쓰면되지 왜 전부 새로 짜게 만드는 건가 불만이었는데, 지나고 보니 그 때 도큐먼트를 읽고 습득하는 법을 배운게 큰 자산이 되었습니다.

병원사람들

병원사람들에서는 React, NestJS, TypeORM, Mysql, AWS를 사용했습니다. AdonisJS 대신, 대다수의 기업이 사용 중인 NestJS 를 사용했습니다. 위키독스의 NestJS 입문용 텍스트와 인프런 NestJS 강의를 들었습니다. 개발이 어렵지는 않았으나 NestJS 버전이 8에서 9로 올라온 지 얼마 되지 않아 참고할만한 글이 적었던 것, 그리고 인증/인가 부분에서 가드나 인터셉터, 미들웨어를 어떻게 쓰면 좋을지에 대한 기준이 명확하지 않아 코드를 우회적으로 짠 것은 아쉬움으로 남아 있습니다.
TypeORM 또한 버전이 바뀌며 개발 과정에서 어려움을 겪었습니다. 0.2와 공통되는 부분은 금방 습득했지만, 기존의 시딩 라이브러리가 모두 사용하기 어려워졌었습니다. 급한대로 seed 함수를 만들고 외부에서 요청을 보내면(GET /api/auth/seed) 그 요청을 통해 시딩 할 수 있도록 함수를 작성했습니다.
AWS의 경우, 처음에는 public ec2 에 올리면 되겠거니 생각하고 있었습니다. 9월 중 메가존과의 미팅에서 bastion server 에 대해 알게 되었습니다. 이후 10일 정도 고민해서 VPC, 서브넷라우팅, ec2 등의 작업을 진행했습니다. ec2 을 꺼 둘 때도 과금되어서, NAT gateway 대신 퍼블릭 서버에 NAT Instance 를 설치해 private ec2 와 연결했습니다. AL2 nginx 에 certbot 올려서 letsencrpyt 인증서를 붙였습니다. 이후 프로젝트 방향이 전환되고, 신규 개발자 입사와 함께 한계를 느껴, 합의 하에 12월에 퇴사 하게 되었습니다.

그로잉랩

퇴사 후 사수가 있는 금융 도메인을 다루는 곳에 가고자 했습니다. 관련 회사를 찾던 중 NestJS 를 사용하고 있고 사수가 있던 그로잉랩에 입사하여 버틀러 사이트 백엔드를 담당하였습니다. 다만 입사 즈음에 사수가 퇴사하게 되어, 다시금 사수 없이 개발을 진행하게 되었습니다.
Hapi, Mysql, AWS, Redis 기반으로 개발을 진행하였습니다. 기능개선, 유지보수를 진행하며 쿼리 튜닝이나 API 속도 개선 등을 진행하였습니다. 데이터 스크래핑은 Playwright 를 이용해, NodeJS 환경에서 데이터 스크래핑, 전처리, 데이터 저장 및 조회가 모두 진행되도록 하였습니다. 금융 도메인에 대해 배울 수 있어 좋았습니다. 개발된 서버를 유지 보수하는 경험을 통해 유지관리에 대한 이해를 넓힐 수 있었습니다. 다만 새로운 API를 개발할수록 타입 불안정성이 만들어내는 문제 등 여러 사정에 의해 합의 하 퇴사하였습니다.

현재

현재는 프리랜서 개발자로 일하고 있습니다. 프론트는 React, 백엔드는 NestJS 와 Prisma 를 사용 중입니다. 다음 회사는 프로덕트를 만드는 과정이 수직적이지 않고, 업무가 명확하게 관리되어 개발에 집중할 수 있으며, 개발 도구와 교육에 돈을 아끼지 않고, 개발 과정에서 안정감을 느낄 수 있다면 더욱 좋겠다고 생각하고 있습니다. 핏이 맞는 스타트업에서 오래 일하고자 합니다.

댓글