brunch

You can make anything
by writing

C.S.Lewis

by 한성원 Sep 10. 2023

개발자 커리어,
열심만으로는 절대 안 된다

개발자 생활 만만치 않죠?

최근에 개발자로 전향한 사람들이 겪는 고충에 대한 기사들을 읽었다. 열심히 부트캠프를 통해서 겨우 개발자로 취직을 했는데 대우도 못 받고 야근도 많아서 회의감을 느낀다는 내용과, 흔히 말하는 개발자의 혜택은 대기업에 입사한 소수의 개발자에게만 주어진다는 이야기라는 식의 내용이었다. 고충을 겪는 이들의 현실에 안타까움도 있었지만, 개발자라는 이유로 혜택을 누릴 수 있을 것이라는 기대 자체가 잘못된 것은 아닐까 라는 생각을 했다. 


그래서 이번 글에서는 개발 시장에 대한 현실적인 이야기를 좀 다뤄보고, 어떤 방식으로 개발자 커리어를 접근해야 커리어를 성장시키고 더 많은 혜택을 누릴 수 있는지 나눠보려 한다. 


열심만 가지고는 안 되는 이유

개발자 커리어는 코딩으로 만들어지지 않는다.

흔히 코딩을 열심히 하면 개발자로 커리어를 쌓아갈 수 있을 것이라고 생각하지만 이는 사실이 아니다. 

건물을 건축하기 위해서는 토목공사가 필요하지만, 건축에는 토목공사 외에도 많은 기술과 지식들을 요구한다. 이와 마찬가지로 개발자가 커리어를 쌓으려면 코딩뿐만 아니라 시스템 디자인, 설계 및 접근방법 등 실제로 프로젝트를 성공적으로 이끌기 위한 다양한 지식을 갖춰야 한다. 소프트웨어는 코드로 짜여 있지만 그 원리는 코드 밖에 존재한다. 


자유시장 경제체제에 대한 이해

개발자로 커리어를 쌓아나가기 위해서는 시장에 대한 이해를 할 필요가 있다. 그리고 시장을 이해하기 위해서는, 자유시장 경제체제 안에서 '어떤 기술들이 시장에 가치를 제공하는가'에 대한 인지가 반드시 있어야 한다. 

풀어 설명하자면 개발자가 가지는 가치만큼의 보상을 하는 곳이 개발시장이다. 신입 개발자들이 낮은 대우를 받는 이유는 두 가지인데 첫째는 주니어 개발자들이 시장에 넘치기 때문에 굳이 높은 대우를 해줄 필요가 없고, 둘째는 주니어 개발자들은 아직 기업에 높은 가치를 창출하지 못하기 때문이다. 더욱이 개발자 진입장벽이 낮아지고 정보의 풀이 넓어져서 코딩을 할 줄 아는 사람들이 정말 많아졌다. 심지어 ChatGPT나 CoPilot을 사용하면 더 빠르게 코드를 만들 수도 있다. 

시장은 더 이상 코딩기술의 가치를 예전처럼 높게 평가하지 않는다. 

 

그러면 도대체 어쩌라는 거야

개발시장이 원하는 하는 기술들을 배워라

커리어를 쌓아가려면 먼저 쓸모 있는 기술, 즉 기업에 이윤을 창출해 낼 수 있는 기술들을 가지고 있어야 한다. 환경에 불만을 갖기 전에 스스로에게 질문해 볼 필요가 있다. '과연 나는 회사에 돈을 벌어다 주고 있는가?'


개발자 시장 또한 수요와 공급의 원리에 움직인다는 것을 기억하자. 

'저 기술은 너무 어려워'라는 생각은 당장 버려야 한다. 처음부터 잘하는 사람은 이 세상에 아무도 없다. 그리고 누구나 할 수 있다면 시장은 원하지도 않는다. 커리어를 쌓는 것이 목적이라면 시장이 원하는 기술을 배울 줄 알아야 하고, 이런 기술들은 아무나 못하기 때문에 수요가 높다.

높은 커리어를 갖는다는 말은 '아무나'에서 벗어나서 '뛰어남'으로 가는 길이다. 그리고 시장은 수요가 높은 기술을 가진 개발자들에게 합당한 대우를 해준다.


수학적 문제해결 능력을 길러라

네쿠카라배, FAANG에서 왜 알고리즘과 자료구조 코딩 테스트에 집착하는지 생각해 본 적이 있는가? 이들이 찾는 것은 코딩이 아닌 수학적 문제해결 능력이다. 대기업뿐만 아니라 테크 기업들이 다 문제 해결사들을 찾는 이유는 이것이 기업의 수익을 올리거나 지출을 절약하는데 일조하기 때문이다. 


아마존의 경우 100ms 레이턴시(Latency: 속도지연)는 판매의 1%의 영향을 끼친다. 
구글은 0.5초만 검색이 지연돼도 트래픽이 20% 감소한다. 
대부분의 웹사이트 로딩이 3초 이상 걸리면 50% 이상의 방문자들을 잃는다. 


수학적 문제해결 능력은 천재들만 가진 능력이 아니다. 충분한 시간을 꾸준히 투자하면 잘할 수 있게 된다. 그리고 이 능력은 프로그래밍 언어에 구애받지 않기 때문에 본인에게 익숙한 언어로 배우면 된다. 

코딩도 결국에는 문제 해결의 한 방법이다. 커리어를 끌어올리려면 문제 해결사가 되어야 한다.


나보다 앞선 개발자들로부터 배워라

커리어는 혼자의 노력으로 올라가는 것보다 위에서 끌어주면 더 빠르게 올라갈 수 있다. 당장 인맥이 없다고 한탄할 필요도 없다. 개발자들의 블로그를 읽을 수도 있고, 오프라인 모임에 나갈 수도 있고, 책을 읽을 수도 있다. 이미 앞서있는 개발자들을 어떻게든 발견해야 한다. 그들에게서 멘토링을 받기 시작하면 시행착오를 줄일 수 있고, 시행착오를 줄이는 것만큼 커리어의 성장속도를 올리는 좋은 방법이 없다. 


내가 겪고 있는 경험은 누군가 이미 겪었다. 먼저 경험을 한 사람들의 지혜를 구하자. 



근력운동을 하는데 가벼운 무게만 열심히 드는 사람은 근육의 크기가 자라지 않는다. 근육을 키우려면 부담스러운 무게를 들어야 할 뿐 아니라, 적절한 식단 관리도, 휴식도 병행해야 하고 무엇보다 꾸준히 해야 한다. 


개발자의 커리어도 이와 크게 다르지 않다. 커리어를 끌어올리기 위해서는 익숙한 코딩만 열심히 하면 안 된다. 어려운 코드들도 만들어봐야 할 뿐 아니라, 시장분석도 할 줄 알아야 하고, 문제 해결능력도 기르고, 나보다 앞선 사람을 찾는 노력도 해야 하고, 무엇보다 꾸준히 해야 한다. 


나는 개발자로서 많은 혜택을 누리고 있지만, 이 것들은 커리어를 끌어올리는 과정에서 자연스럽게 따라왔을 뿐이지 한 번도 혜택을 위해서 노력을 했던 적은 없다. 큰 것을 얻고 나면 부수적인 것은 알아서 따라오게 되어있다. 개발자가 되었는데 기대했던 것과 다른 삶을 살고 있어서 실망했다면, 이 글을 통해서 커리어의 성장이라는 관점으로 다시 한번 접근해 보고 개발자라는 이 멋진 커리어를 포기하지 않기를 바란다. 


제 글을 읽어주셔서 감사합니다.

글의 내용이 도움이 되었다면 지인들에게 공유를 부탁드리고, 이견이나 개선점이 있으시면 댓글 부탁드립니다.

작가의 이전글 야근을 멈춰야 커리어가 성장한다
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari