소프트웨어 개발자는 모든 조직에 필수적인 존재로 자리잡고 있습니다. 디지털 대전환이라는 키워드가 화두가 되면서 아날로그에서 디지털로 비즈니스 환경의 판도가 변하고 있습니다.
컴퓨터가 등장하고 난 후 폰 노이만 아키텍처를 사용자가 쉽게 동작할 수 있도록 등장한 Operating System부터 AI, 머신 러닝 까지 기술은 계속 변해왔고, 그 중에서 구글, 페이스북, 카카오와 같은 대기업이 등장합니다.
개발자로 살아간다는건 어떤 의미일까요? [개발자 리부트]의 저자 조성룡은 책에서 자신의 생각을 명쾌하고 직설적으로 설명하고 있습니다. 제조업을 뿌리 산업으로 성장한 대한민국에서 소프트웨어의 발전은 아직까지도 요원한 일이 되어 버린 현실을 지적하고 있습니다.
개발은 취미로
놀랍게도 많은 개발자들이 소프트웨어 개발을 취미로 삼는 것을 꿈꾸고 있습니다. 내가 좋아하는 일을 업으로 삼았을 때 나오는 병폐를 잘 알고 있기 때문입니다.
만약 사진 찍기를 좋아하는 사람이 사진가를 업으로 삼아버리면 자신이 좋아하는 풍경과 피사체를 렌즈에 담는 대신 고객이 원하는 사진을 찍어내야 하기 때문입니다. 자본의 힘은 그만큼 무섭습니다.
개발자로써 생활하면서 취미로 개발을 한다면 내가 원하는 프로젝트를 진행할 수 있고, 사람들의 반응이 좋다면 실제 서비스까지 발전시켜볼 수 있습니다. 내가 원하는 스택과 방향을 정했기 때문에 일의 의미를 찾을 수도 있고, 보람도 있습니다.
하지만 대부분의 개발자들은 고객이 원하는 기술명세 맞춰 조립식으로 소프트웨어를 개발하게 됩니다. 빡빡하게 주어진 일정과 리소스를 가지고 열심히 프로젝트를 완성하면 중간중간 요구사항이 변경되거나, 가정사가 발생하는 인터럽트가 발생합니다.
이렇게만 되면 그나마 다행이지만, 열심히 프로젝트를 진행하고 완성률이 80%가 넘어가는 시점에 프로젝트를 엎어라는 말도 안되는 지시가 상부에서 내려옵니다. 역시나 자본의 논리대로 프로젝트의 존재 이유가 갈려버리기 때문입니다. 이 때 개발자는 개발에 흥미를 잃어버리고 이직 혹은 퇴사를 생각하게 됩니다.
서비스 vs 소프트웨어
개발자로써 어떤 성장 곡선을 그리고 싶으신가요? 라고 물어보면 풀스택 개발자라고 대답하는 사람이 적지 않습니다. 우리나라의 적지않은 스타트업들이 서비스 기반 개발을 진행하고 있는 것과 맥락이 닿아있습니다. 하지만 [개발자 리부트]의 저자는 서비스는 개발이 아니라고 답하고 있습니다.
예를 들어 모바일 서비스를 만든다고 가정해봅시다. UI를 담당하는 프론트 엔드는 리액트 네이티브를 사용하고, API 서버는 Nest.js를 사용합니다. 데이터베이스는 MongoDB를 사용하고 서버는 AWS의 EC2를 사용하게 됩니다. 즉, 각자의 스택을 조립해서 그 안에서 서비스를 구현해내기만 하면 됩니다.
서비스와 소프트웨어 개발은 별개의 문제입니다. 특허권을 생각해보면 세상에 없던 서비스를 만들어 특허권을 낸다는 건 조금 어색합니다. 반면 리눅스, iOS, 윈도우와 같은 Operating System이나 머신러닝 솔루션을 개발하고 이를 적용한 서비스를 구현한다면 특허권을 받는다는게 이해가 갑니다.
누군가 당신에게 개발자로써 어떤 성장 곡선을 그리고 싶으세요? 라고 물어보면 어떤 대답을 하실건가요? 풀스택 개발자, 백엔드 개발자는 스택을 조립해서 결과물을 만들어내는 일에 그치지 않습니다.
행복한 개발자
개인적으로 생각하기에 개발자의 몸값이 천정부지로 올라가는 이유는 그만큼 1명의 개발자가 세상에 미치는 영향력이 크다는 것을 반증한다고 생각합니다. 서비스를 만들고 핵심 비즈니스 로직을 구현할 수 있을 정도의 개발자 1명은 짧은 시간안에 프로덕트를 뚝딱 만들어 낼 수 있는 인프라가 갖추어져 있습니다.
DAU(Daily Active Users)가 늘어나면 늘어날 수록 서버비를 부담해야 하고, 마케팅에도 자본을 쏟아부어야 하지만 80~90년대 사업을 시작하는 것과 비교해면 비약적으로 간편해진게 사실입니다. 그만큼 경쟁도 강화되었지만 상상만 하던 프로덕트를 만들어내는 일은 그리 어렵지 않은 세상에 살고 있습니다.
[개발자 리부트]의 저자는 행복한 개발자가 되기 위한 길은 무엇일까?에 대한 화두를 남기고 있습니다. SI가 지배하고 있는 대한민국 개발자 시장에서 행복한 개발자는 역설적인 단어로 들립니다. 개발자는 취업, 창업, 프리랜서, 개발 콘텐츠 제작 등 다양한 방법으로 생계를 꾸려나갈 수 있는 업종입니다. 여러분의 생각은 어떠신가요?
🚀️ 도움이 되셨다면 구독과 좋아요 부탁드립니다 👍️
'Programming' 카테고리의 다른 글
ios 앱 개발 공부 순서 (0) | 2022.12.23 |
---|---|
[DEX PJ] #2 성공적인 프로젝트의 조건 (0) | 2022.11.01 |
매개변수(parameter) VS 인수(Argument) 차이점 (0) | 2022.10.15 |
Nest.js TypeORM 2.0에서 3.0으로 (0) | 2022.10.14 |
GET POST 차이점 💡 (0) | 2022.10.14 |
댓글