세번째 새해를 맞아서 🚀

예은·2022년 3월 2일
0
post-thumbnail

새학기 기념 조금 늦은 1년 회고록 ✍️
(사실 작년 12월에 써놨는데 이제야 정리함🙄)

내 인생에서 큰 사건 두 개가 발생한 1년이었다. 그 중 하나가 퇴사다.

👋 드디어, 퇴사 !

4년 다니던 첫 직장을 나왔다.

길다면 길고 짧다면 짧은 시간이었지만 계획보다는 늦어진게 사실이다. 매일같이 야근을 하며 일을 하는데 이게 나에게 도움이 되는지, 이렇게까지 해야할 일인지 회의감이 들었다. SI 특성상 짧은 기간에 프로젝트를 끝내야 하는데 이건 빠듯해도 너무 빠듯하니 점점 한계에 부딪히는 느낌이었다.

그리고 그에 비해 턱없이 부족한 보상도 한 몫했다.

모든 프로젝트를 빨리빨리, 일단 굴러가도록 진행하고 있었으며 나중에 고치면 되겠다는 생각으로 굴러가기는 하는 코드를 짜고 있었다. 왜 그렇게 해야하는지는 모른다.

바꾸려는 시도도 했었다.

진급하면서 새로운 팀에 배정되며 분석과 설계에 참여하게 되었다. 일관성을 위해 네이밍과 코드 룰을 팀원들과 열심히 의논해서 만들었다. 그리고 공통 모듈의 중요성을 늘 느꼈기 때문에 우선순위에 두고 개발을 진행했었다.

해보고 싶었던 코드 리뷰도 했는데 코드 리뷰라는걸 하던 회사가 아니었기 때문에 도움받을 사람이 없었다. 그냥 내가 아는대로 하다보니 이렇게 하는게 맞나 싶으면서도 안하는거보단 나을거라는 생각에 진행을 했었다.

근데 그것도 프로젝트가 중후반을 넘어서 시간이 촉박해지니 결국 사라지게 되었다. 그렇게 마무리하고 신규 프로젝트에 투입되면 이번엔 진짜 잘해보자 으쌰으쌰하면서 또 규칙 만들고.. 코드리뷰하면서 사원들의 코드도 정리해줬는데.. 또 흐지부지되고 나중에 보면 다 따로 놀고 있었다. 이 과정이 매 프로젝트마다 반복이었고 계속 그럴거 같았다.

다들 너무 바쁘긴한데...

매일같이 야근하고 일에 빠져 사는데 과연 본인이 사용하는 기술스택과 프로젝트의 구조를 이해한 개발자가 몇 명일까하는 생각도 들었다.

좋은 개발자가 되려면 SI를 최대한 빨리 벗어나는게 좋다는 아티클을 읽은 적이 있다. 읽자마자 인정하면서도 대체 왜 그럴까 의문이 들었다.

생각해보면 당연하다. SI는 고객의 일정에 무조건 맞춰야 하기 때문에 결과물 중심적이다. 그렇기 때문에 코드를 찍어낼줄만 알면 좋은 개발자가 아니어도 된다.
유지보수? 당장 코앞의 오픈이 중요한데 눈에 들어오지도 않는다. 돌아가기만 하면 된다. 어디까지나 내가 경험한 SI를 예로 든 것이다. 나도 그렇게 일했었고 바쁜데 어떡해라고 합리화하다가 이건 아니다하고 아차 싶었다. 그래서 이것저것 해봤지만 나아갈 수가 없을 거 같았다.

내가 얻어가는건

그래도 배운것이 많다. 웹 개발이고 SQL이고 아는게 거의 없던 상태에서 입사하여 규모가 꽤 큰 공기업 프로젝트에도 투입됐었다. 코드를 짜는거뿐만 아니라 분석, 설계, 개발, 완료 단계에 필요한 문서 작업도 해보았고 무엇보다 협업의 중요성을 크게 깨달았다. 함께 고민하고 해결법을 찾으면서 이것저것 시도해보는 팀원이 있으니 나도 더 열심히 하게 되었다. 그리고 위에서 말한 좋은 개발자의 기준도 나름 세웠고 이렇게 일하다간 평생 도달하지 못할 거 같다고 느꼈다.

👩‍🌾 어쨌든 개발자

한 해 수확물 현황

작년까지 총 3개의 프로젝트에 참여했다.

1️⃣ 작년에 시작해서 올해 끝난 것

  • Java, Spring, Tibero

이 프로젝트는 너무 잘해내고 싶었다. 안좋은 상황이 여럿 겹쳤었는데 잘해내고 싶은 마음이 앞서서 주말이고 휴가고 그냥 일만 했었다. 결과적으로 내가 원하는만큼의 완벽한 서비스를 구현하지는 못했지만 내가 이걸 위해서 이렇게까지도 하네 라는걸 알게 되었고, 그게 나를 돌아볼 수 있는 계기가 됐었다. 나에게 제일 큰 도움이 되었던 프로젝트였다.

서비스 오픈 후에는 전쟁터로 출근하는거 같았다. 이전까지 했던 프로젝트들과는 차원이 다른 접속자 수에 큰 이벤트라도 있는 날이면 하루종일 멘탈이 나가있었다. 여기 저기 질질 끌려다녔다.

오류가 나는 기능때문에 당장 대체로 쓸 기능을 개발해달라고 하고 그 와중에 원래 안되던 것도 고쳐야 하고 이중으로 죽을맛이었다. 애초에 설계를 더 꼼꼼히 했더라면, 테스트라도 잘했더라면하는 분노와 아쉬움이 가득했다.. 첫 단추를 잘못 끼우니 끝나도 고생하는구나 싶었다. 다시 한다면 더 잘할 수 있을 거 같다는 약간의 아쉬움이 남는 프로젝트다. 근데 다시 하긴 싫다.

2️⃣ 올해 시작해서 올해 끝난 것

  • .net5, blazor, mssql

처음 사용해보는 기술 스택이라 팀원들과 매일 공부했고 모듈의 재사용성과 중복을 피하기 위해 많은 노력을 했다. 1️⃣번 프로젝트보다 더 체계적으로 진행하려고 REST API의 규칙과 네이밍도 꼼꼼하게 정했으며 진행률을 파악하며 완료된 코드를 확인해서 피드백도 던져주고, 모듈을 만들면 공유해서 중복 코드를 줄이려고 애를 썼다. 다들 새로운 개발 환경과 방식에 초기에는 많이 헤맬 수 밖에 없었고 그래서 매번 불려다녔다. 업무시간은 남들꺼 봐주고 그 이후가 내가 개발할 수 있는 시간이었다.

나도 모르는데 계속 나한테 물어본다. 그러면 내가 찾아봐줘야 하는거다.

3️⃣ 올해 시작해서 하다가 나온 것

  • .net framework, mssql

2️⃣번 프로젝트로 해보고 싶었던걸 어느정도 해본 상태였는데 그거 다 필요없고 다시 예전 방식으로 돌아가라는거 같았다. 기간만 짧고 재미도 없었다. 일을 해낸것에 대한 성취감이나 뿌듯함이 느껴지지 않았다. 다른 팀의 솔루션을 인수인계도 없이 가져와서 분석하고 추가 기능 개발을 하자니 답답한게 한둘이 아니었다. 나가야겠다고 마음에 마침표를 찍어준 프로젝트다.

😥 사원에서 한 단계 올라온것뿐인데..

연차가 쌓이고 후배 개발자들이 많아지면서 코드에 대한 피드백을 해주게 되었다. 정확한 정보를 줘야 하니까 아는것도 다시 찾아보게 되었고 그게 또 나 자신에게도 큰 도움이 되었다. 아쉬웠던건 코드리뷰로 피드백을 공유했었는데 원래 코드리뷰라는게 선후배 상관없이 서로 피드백을 주면서 개선해나가야 하는데 이건 뭐 나만 수정사항을 던져주고 있으니 내 방식을 팀원들에게 강요하는건 아닌가 싶었다. 그나마 좋은 코드를 위해 노력하는 팀에 들어왔지만 그럼에도 내 코드를 개선해줄 사람이 없었다. 기능에 대해 오류를 던져주는 사람들은 많았다.😅

🦸‍♀️ 여전히 개발자

퇴사한지 반년이 되어간다. 생각보다 시간은 빠르게 지나갔다. 큰 일을 겪게 되면서 두세 달동안은 손을 떼고 살았다. 어쩌다보니 계획한 6개월은 아니었지만 NodeJS 클론코딩도 해보고 리액트와 일렉트론으로 프로젝트도 진행중이다. 아직 부족한게 너무 많지만 그 중에서 특히 더 부족하다고 생각하는 것, 애매하게 알고 있는 것들에 관심을 두려고 한다.(이러면 솔직히 전부 다시 봐야함 진심)

늘 해보고 싶었지만 이론밖에 몰랐던 테스트 도구에 대해서도 알아보고 있다. 알고리즘 문제를 안푼지가 좀 되었다는게 걱정이다. 조만간 다시 풀어봐야겠다. 😮‍💨

완성물을 향해 앞만 보고 달리기보다는 개발 과정에 좀 더 집중하고 배울 수 있는게 많은 곳을 가고 싶다. 그러려면 당연히 내가 먼저 좋은 개발자가 되어야 한다. 내가 만족할 수 있는 성과를 내고 팀원들과 성취감을 공유할 수 있는 그런 개발자가 되고 싶다.

같이 일하기 좋은 개발자, 어제보다 더 나은 코드를 짜는 개발자가 되기 위해서 야무지게 노력해야겠다.

Change isn't suppose to be comfortable or convenient
If you want change, be prepared to feel awkward
"변화는 안정성이나 편리함을 동반하지 않는다. 변화를 원하거든, 불편함을 느낄 각오부터 해라."

profile
Don't only learn by watching. Learn by building. Learn by doing.

0개의 댓글