지구상에 있는 한 개발자의 첫 회사 1년

스타트업 에서 1 인 개발자로 1 년동안 일 하고 퇴사 하기까지…

SoniaComp
5 min readApr 24, 2021
팀에 합류하게 된 계기
팀에서 배운 점
팀에서 일한 방식
- 내가 일한 태도
- 어려움1: 개발자가 나 혼자
- 어려움2: 새로운 팀원과의 소통
- 어려움3: 프로젝트 매니징
끝까지 팀에 남기 위한 노력
이별을 결심
팀과의 이별 과정

팀에 합류하게 된 계기

  • 스타트업의 자율과 책임이라는 문화가 좋았다.
  • 창업동아리에서 창업을 준비했는데, 기획 / 마케팅보다 개발이 더 재밌다!
    → 특히 내가 개발한 서비스를 사용자가 사용했을 때, 보람이 크다.
    → 고객이 어느 정도 확보된 스타트업에서 일하자!
  • 교내 창업 강의에서 우리 학교 출신의, 3년 정도 된 회사의 CEO 가 오셔서 창업 강의 및 개발자를 구인하고 있다고 말씀하셨다.
    → 첫번째 지원.. 탈락!
    → 대기업 인턴으로 경력을 쌓고 다시 지원.. 합격!
  • 다시 지원한 이유: 꼭 스타트업에서 일 하고 싶었고, 내가 잘 아는 팀이기 때문에, 더 많이 기여할 수 있을 거라고 생각했다.

팀에서 배운 점

  • 스타트업: 끊임없이 성장하고, 자신의 성장을 증명해 보임.
    → 멋있다.
  • 작년 하반기: 나(개발) / 사장님(경영) / 부대표(제품 개발) / 디자이너
    → 각자 역할에 맞게 성장하고, 그 성장이 모여 하나의 서비스가 되고, 곧 회사의 성장이 된다.
    → 멋..멋있다!!

팀에서 일한 방식

[ 내가 일한 태도 ]

참고: 2020년 10월 작성한 스타트업에서 주니어 개발자가 일하는 법

  • 개발은 기획이 실현될 수 있게 하는 지반 및 도구
    → 기획이 개발에 맞추게 되면 혁신이 나오지 못한다고 생각
    → 내가 아니라 고객이 원하는 것을 해야 한다.
  • 다른 부서와 소통 방법: 허울 좋은, 말만 앞서는 개발하지 않기
    → 무조건 새로운 기술 도입 하지 않기
    → 엔지니어로서 정확한 판단을 내리기 ( 뜬구름이 아니라.. )

[ 어려움 1: 개발자가 나 혼자 ]

참고: 2021년 1월 작성한 IT 스타트업에서 개발자가 성장하는 방법

  • 멘토 찾기
    → Github 코드 : 사내 깃헙 레포에 남아있는 선배들의 코드
    → 알고리즘 스터디
    → 퇴사한 선배 개발자
    → 인연이 닿는 모든 엔지니어 ex) 클라우드 컨설팅 대표님
    ( 나만 배우는 게 아니라 나도 배움을 드릴 수 있는 시간 만들기 )
  • 1~2개월 마다 스스로 객관적인 성장 지표 정하기
    → 각 프로젝트에서 개인적인 목표를 정함
    (클린 코드, 개발 속도=설계, 성능, 품질, 범위, 일정, 예산에 적합한 개발)
    → 내 성장을 기록하고 알리기(문서화, 블로그, 자격증)
  • 생산성 높이기 위해 노력 : 세가지 원칙을 정함.
    → 반복을 줄여라.
    → 복잡함을 줄여줄 수 있고, 그게 많은 시간이 걸리지 않는다면 해라.
    → 우선 빠르게 할 수 있는 것부터 당장해라.
  • 운동 : 체력을 키운당! 내가 아프면 개발은 누가하냐.

[ 어려움 2: 새로운 팀원과의 소통 ]

  • 3~5번은 지나쳐주기! 우리는 다 불완전한 사람이니까!!
  • 일하면서 어떤 점이 불편했는지 + 이런 방식으로 해주면 더 좋을 것 같다
    → 상대방에 대해 비난하기 보다는 ( 소중한 팀원에게 비난 하면 안되징! )
    → 내가 어떻게 느꼈는 지에 초점을 맞춰서
    → 대안을 함께 제시해준다.
  • 대안을 함께 제시해주는 것은 중요한 것 같다.
    → 모두 이미 최선을 다하고 있고, 할 일이 이미 많기 때문에,
    → 문제점을 제안하는 것으로는 잘 해결되지 않는다.
    → 조심스럽게 대안을 제시할 때 비로소 문제 해결의 출발점이 생긴다.
    → 1년 경력의 병아리지만, 내가 일하면서 참 중요하다고 느낀 점..
  • 다시 운동 : 스트레스 푼당!

[ 어려움 3: 프로젝트 매니징 ]

  • 개발 요구사항은 계속 바뀌는데, 그로 인한 프로젝트의 범위 및 기한 변경을 관리하고 전달하는 체계가 없었음.
    → 개발 명세에 대해 잘 알지 못하는 팀원이 발생 ( 전부 6명인데도! )
    → 서비스 론칭이 늦어짐
  • 선배 개발자에게 배운 OOAD 개발 명세 분석 방법을 도입 → 편안
  • 소프트웨어 프로젝트 관리 수업을 들어서, 체계적으로 관리하려고 함.
    → 개발 프로젝트 관리 기준에 대해 배움 : 시간, 비용, 범위, 성능
    → 기간 산정 : OKR 그리고 여유 기간 배정이 필요함을 배움
    → 개발 명세의 중요함
  • 다시.. 다시 운동!! : 스트레스 푼당!!!!!!!!

끝까지 팀에 남기 위한 노력

  • 가장 큰 어려움은 개발자 동료가 팀에 없었던 것
  • 위에 적은 여러가지 노력을 하며, 상황의 한계를 넘어서기 위해 노력했다.
  • 내가 극복하기 어려운 상황들에 대해서는 사장님과 의논함.

이별을 결심

  • 클라우드 너무 좋다.. ( 참고: 내가 클라우드 덕후가 된 이유 )
    → 클라우드 보며, 대리만족..
    → 머.. 멋있다!
  • 기술에 대한 팀 자체의 욕심이 나와는 조금 다르다..
    → 기술적으로 전문가가 되고 싶어서 큰 회사로 가고 싶은 개인의 욕심
  • 1년동안 일하면서 우리 회사 말고 다른 두 개의 스타트업 회사와도 친해짐
    → IT 인프라를 관리하는 사람의 필요성을 느낌
    → 모든 개발의 시작점인 만큼, 모든 IT 인프라를 서포트 해주는 가치있는 일이라고 생각함.

팀과의 이별 과정

  • 1인 개발자.. 책임감.. 내 자식같은 우리 회사 서비스들..
    → 정들어 버렸다..
  • 회사가 억단위의 매출을 앞둔 시점에서, 미리 퇴사 의사를 밝힘..
    → 팀에 대한 존중심 있는 태도를 유지하고 싶었음..
    → 매출 성공여부에 상관없이 내 새로운 목표를 위한 퇴사임을 밝힘..
  • 이와 함께, 2달의 남은 시간동안 마지막으로 기여하고 싶은 점
    → 개발부의 문화 만들기.. (나와 인턴 개발자)
    → 실제로 코드 리뷰, 1주일에 1시간의 멘토링 시간을 만듦
  • 내가 떠난 이후, 성장하는 이 회사에서 개발부서에 필요한 점에 대한 의견 전달
    → 팀이 유지되고 커지려면, 팀을 이끌어주는 시니어 개발자가 필요
  • 3월 퇴사 이후 본격적으로 이직 준비 시작을 계획
    → 회사에 있는 기간 동안 병행한다면, 팀에 피해가 갈 것 같았음

이전 회사에서 감사하게도 많은 기회를 얻었던 것 같다!

  • 운이 좋게도, 원하는 회사의 원하는 부서에서 😭 바로 채용 공고가 남!!
  • 좋은 기회가 온 만큼 최선을 다하자!!

--

--

SoniaComp

Data Engineer interested in Data Infrastructure Powering Fintech Innovation (https://www.linkedin.com/in/sonia-comp/)