저도 회고글을 통해서 많은 영감을 얻게 되었고 받았던 영감들을 누군가에게 베풀고 싶었습니다. 자랑글일수도있지만 저와 같은 고민하는 사람에게 도움이 되고 싶어 작성하게 되었습니다. (광고, 홍보글과 전혀 연관이 없음을 사전에 알려드립니다. 문제 발생 시 수정하겠습니다.)
게임 도메인 c#. net 기반 플랫폼 서버 애플리케이션 개발자에서 Java Spring 기반 카카오페이 서버 개발팀, 넥슨 인텔리전스 백엔드 개발팀, 넷마블 빅데이터 플랫폼실 데이터 엔지니어 직군에 합격하였습니다.
[ 과정 ]
대학교 친구의이직성공기
올해 초 친구의 이직 성공 이야기 K사 및 스타트업의 도전적인 개발 조직 합격(처우면 에서 1X00 향상) 소식을 우연찮게 들었습니다. 이때 알게 모르게 나도 가치 있는 무언가를 해서 친구처럼 영감을 주는 사람이 막연히 되고 싶었습니다.
평소 중고나라, 번개장터 같은 웹서비스를 자주 사용하였습니다. 내가 가진 개발 지식으로 어떤 걸 할 수 있을까 깊게 생각하게 되었고 도움을 받을 수 있는 방법을 여러 방면에서 찾게 되었습니다. 그렇게 찾던 과정 중 멋쟁이 사자처럼 직장인을 인스타그램을 통해 알게 되었습니다.
멋쟁이사자처럼직장인
요약하자면 ruby on rails로 '도장 추천 시스템'을 개발하여 aws EC2 환경에 배포하였습니다.
웹에 대한 전반적인 이론과 ruby & rails의 MVC 패턴 및 각종 잼을 사용하는 법을 배웠습니다. 카카오 지도 API를 사용하여 현재 위치 기준 도장 거리 순서, 평점 순서, 날짜 순서 등으로 추 천 기능을 개발하였습니다. 셀리니움 통해 크롤링, redis 1:1 채팅, canvas Javascript로 간단한 자동차 게임 등을 개발하였습니다.
개발적인 지식도 많이 배웠지만, 무엇보다도 능력 있고 활기찬 사람들과의 커뮤니케이션을 하면서 동기부여를 받았고, 여러 능력자들을 만났습니다. (퀄컴, 네이버, 넥슨, 틱톡 등등...)
스스로 동기부여를 하는 사람들은 결국엔 높은 자리까지 가서 영감을 주는 사람이 되는구나 라고 깨달았습니다.
웹 서비스를 깊이 있게 탐구하고 싶어서 java Spring 기반 지식을 탐구하는 초석이 되었습니다.
서버 개발자 멘토링
막상 java spring을 깊이 있게 혼자 탐구하려니 막막하였습니다. 마침 Instagram에서 서버 개발자 과외를 한다는 글이 눈에 띄어서 문의하였고 진행하면 많은 피드백을 받을 수 있겠다 싶어서 진행하였습니다.
기술적인 지식을 강의식으로 듣는 방식이 아니고 (기존 대학교 포함 12년 넘게 강의식 공부방법에 길 들여 저 있던 저로썬 신선한 충격이었습니다.) 스스로 생각할 수 있게 지식의 방향성을 자문하는 방법을 깨달았습니다. 하지만, 여전히 공부는 내가 해야 한다는 주체성은 변하지 않았고 한 개를 알더라도 깊게 공부해야 유효하다는 것을 느꼈습니다.
평소 중고거래에 관심이 많았던 저는 번개장터와 같은 중고거래 시스템을 개발하기로 결심하였습니다. 프로젝트의 관심사는 단순히 동작하는 소프트웨어가 아닌 협업 시에 용이하게 Google code Style 컨벤션을 준수하였고, 추후 업데이트 시 유지보수 용이하게 확장성(객체지향, 디자인 패턴)을 고려하여 설계 개발하였습니다. 코드 관리는 git을 사용하였고 이슈별 브랜치, PR시 리뷰를 진행한 후 merge 하였기 때문에 코드리 팩터링을 할 수 있었습니다.
회사 업무와 각종 개발단체에서 개발을 하면서 느꼈던 점으로는 문제 발생, 추가 업데이트 시, 아키텍처 설계 시 항상 CS 기본지식이 사용된다는 점입니다. (대용량 트래픽 처리 시 지연 현상, 각종 라이브러리 버전 업데이트 등등) 그리하여 대학교 친구 중 개발 스터디에 관심 있는 친구와 스터디를 진행하기로 하였습니다.
스터디했던 내용으로는 JAVA 기본 문법부터 시작해서 EffectiveJava, CleanCode, Netty 등등을 타깃으로 스터디를 진행했습니다. 현재는 Spring-security, JPA, 쿠버 네티스 등을 추가로 진행할 예정입니다.
스터디를 하면서 느꼈던 점으로는 혼자 공부하는 것도 좋지만 다른 사람에게 설명을 하다 보면 머릿속에서 정리가 되고 지식을 공유하기도 하며 보다 효율적인 스터디 방식임을 깨달았습니다. 단순 지식을 안다에 그치는 게 아닌 왜 동작할까? 어떻게 하면 더 효율적으로 처리할 수 있을까?를 생각하였습니다. 제가 좋아하는 세바시 강연에서도 문구가 나와서 인용하였습니다.
아래는 제가 지원했던 회사들의 예상 면접 질문들입니다. (실제 질문이 아닌 스스로 자문한 내용임을 알려드립니다.)
Notion에 면접 예상질문 Q&A
코딩 테스트
주로 해커 랭크 medium을 풀었습니다. 영어 울렁증이 있으신 분들은 프로그래머스 사이트를 추천드립니다. 중요하게 느꼈던 점은 자신의 레벨에 맞는 것을 답을 보지 않고 생각할 수 있는 최대한 깊이 있게 생각하고 그 과정을 코드로 녹여내는 게 중요하다는 걸 깨달았습니다.
예전에 알고리즘 잡스라는 단체에서 알고리즘을 배웠던 경험이 있는데 금전적으로 여유가 되시는 분들은 추천드립니다.