이 글은 내 1년차 개발자 회고 이다.
0. 들어가며
올해는 내가 회사에 입사해서 개발자로 일을 한 첫해로 모든 게 낯설고 신선했다. 그때 내 마음은 다음 문장으로 표현할 수 있었다.
"내가 학교가 아니라 현업 실무에 투입된다고? 기능이 아니라 버그를 만들 것 같은데ㅎㅎ"
그리고 예상은 벗어나지 않았다.
1. Hello Wor.. 아니 Company!
정확히는 12월부터 입사해서 한 달 동안 교육을 받고 1월부터 실무에 투입되었다. 내가 배치된 팀에서 사용하는 주 언어는 JAVA였고 주 프레임워크는 Eclipse RCP를 사용했다. 얕게 공부를 해왔던 탓에 사용할 줄만 알지 JAVA가 어떤 언어인지는 하나도 모르고 객체지향 프로그래밍도 못하는 상태(디자인 패턴도 몰랐다.)에서 실무에 적응하는 과정은 재미있으면서 힘들었다. 힘들었던 내용은 다음과 같다.
- 협업을 해보지 않은 상태에서 유지보수 용이하게, 객체지향적으로 프로그래밍을 해본 적이 없어 코드를 어떻게 작성해야 할지 감이 오지 않았다.
- 개발 툴(현 팀에서는 Eclipse) 단축키, 사용법에 익숙하지 않았다.
- 부끄럽지만 툴을 사용해 디버깅을 할 줄 몰랐다.
- Git(형상관리) 또한 제대로 사용할 줄 몰랐다.
2. 공부
딴생각 못하고 개인적으로 JAVA와 객체지향 프로그래밍, Git에 대해 공부했다. 지금은 퇴사를 하셨지만 처음 팀에 배치받았을 때 팀장님께서 해주신 말씀이 너무 와 닿았다.
"OO 씨는 아직 물에 안 젖은 스펀지예요. 막 뭐든 빨아들일 수 있는 상태인데 좋은 물을 빨아들여야죠. 인터넷, 블로그를 찾아보는 것도 좋은데 기본적인 건 책을 보세요. 인터넷은 검증이 안되어도 아무나 쓸 수 있는데 책은 누군가 검증을 했을 거예요."
그래서 옆에 "JAVA의 정석"과 "Head First Design Pattern" 이 2권의 책을 항상 두었다. 그리고 계속 공부를 하며 내가 가지고 있는 책의 큰 문제점이 발견되었다. 사내 코드에는 JAVA8에 새로 생긴 기능이 들어가 있는데 내가 가지고 있는 책에는 해당 JAVA 8은커녕 람다도 없었던 것이다. 그래서 최근에 "모던 자바 인 액션"이라는 책을 새로 구입했다.
그리고 더닝 크루거 효과를 지금 상황에 대입할 수 있을 것 같다.
점점 공부를 할수록 나는 모르는 게 많은 사람인 게 느껴지고 공부를 많이 해야 하고 내가 지금 가지고 있는 지식에 대한 자신감이 떨어졌다.
그래서 내가 무엇을 알아야 하는지 노션에 리스트를 작성하면서 공부를 하고 있는데 공부해야 할 JAVA의 기본적인 부분들만 작성해도 생각보다 많아졌다. 아래 그림은 내가 작성한 목록 일부이다.
3. 블로그 글 쓰기
처음에는 사소한 것이라도 블로그에 올리려고 했다. 그런데 그 와중 어떤 생각이 들었다.
"이게 정확한 지식이 아니라면?"
그 생각이 드는 순간부터 블로그에 글을 올리는 것을 멈췄고 앞으로 어떻게 해야 할지 고민에 빠졌다. 그래서 대부분의 내용을 노션에 담아두고만 있는 상황이다.
4. 그래서 지금은?
여전히 모르는 것이 많다. 그래도 정말 운이 좋다고 생각한 건 내 바로 위에 있는 사람이 정말 개발자로서 좋은 자세를 가지고 있어 본보기가 되어주고 잘 알려준다.
아무튼 과장한 내용일 수 있지만 내가 이제 할 줄 아는 내용은 아래와 같다.
-
팀 내에서 딥러닝을 겉핥기라도 해 본 유일한 사람으로 프로젝트 진행 중 데이터 학습 및 객체인식 성능 개선을 담당하고 있다.
-
기존 레거시 코드에 맞춰 추가 API를 개발하고 버그를 수정하고 있다.
-
고객사 대응도 이제 조금은 할 줄 안다.
-
여전히 저품질 코드를 작성하는 기분이 든다. -
일이 주어졌을 때 기능을 개발하고 (학부 때는 안 해본 일이지만) 유저 시나리오를 상상하여 버그를 미리 예방한다.(물론 내가 상상하지 못했던 유저 시나리오가 나타나면 버그가 나타나서 노력 중이다.)
5. 결론적으로 내가 깨달은 것은?
-
기본기의 중요성
-
하나를 깊게 파두어야 하는 것에 대한 이유
-
요구사항 명세 및 유저 시나리오 상상에 대한 중요성
6. 1년 차가 끝난 지금 내가 되고 싶은 개발자는? 그리고 그 외 목표가 있다면?
-
언젠가 내 이름으로 기술서적을 하나 출판하고 싶다.
-
선한 영향력을 가진 개발자가 되고 싶다.
-
지치지 않고 공부를 할 수 있는 방법을 찾고 싶다.
-
토이 프로젝트를 하고 싶은데 뭘 해야 할지 모르겠다.
-
글쓰기를 좀 더 잘하고 싶다.
마치며
입사할 때는 코로나가 터지지 않아서 서울에 올라오면 전시회도 다니고 세미나, 컨퍼런스를 다니고 카페 투어도 다니고 싶었는데 다 접었다. 운동도 해야 하고 공부도 해야 하는데 코로나를 핑계로 확찐자 개발자로 변신하고 있다.
이렇게 2020년 내 뉴비 개발자 생활을 적어본다.
제발 2021년에는 좀 잠잠해지길..
'주니어 개발자로 일하며 느낀 점' 카테고리의 다른 글
2023년을 어떻게 보냈었더라 (3) | 2024.01.14 |
---|---|
[버그] 231125 야스오 버그 영상을 보며 든 생각 (0) | 2023.11.26 |
교육자료 준비 (0) | 2022.10.30 |
getter/setter 를 꼭 사용해야하는가? (0) | 2022.09.07 |
개발에 대한 생각이자 아무말 대잔치 (0) | 2022.04.30 |