본문으로 건너뛰기

개발자 커리어 패스에 대하여

· 약 8분
조준철

S/W를 통한 고객의 문제해결 역량이 모든 기업에게 선택이 아닌 필수인 시대입니다. S/W 경쟁력을 갖춘 제조/유통/서비스 기업이 시장을 주도하고 있으며 어느 기업이든 비즈니스 성장을 위해 반드시 필요한 역량이기 때문입니다.

그런면에서 개발 직군은 앞으로도 중요한 역할을 할 것으로 예상됩니다. 그러나 개발자라는 직업은 어떤 성장과정을 거쳐야 하는지, 어떤 기술을 어떤 순서로 배워야 하는지, 어떤 경험을 쌓아야 하는지에 대한 명확한 가이드라인이 없습니다.

단계별 기술 커리어 패스

소프트웨어 개발자라는 직업의 정점이 무엇인지는 개인마다 차이가 있어 정확히 알 수 없으나 다음과 같이 추구하고자 하는 성향으로 개발자가 원하는 미래를 살짝 엿볼 수 있습니다.

  • 예술가: 독보적인 감각과 창의력을 가지고 개발 하는 사람
  • 엔터테이너: 고객과 동료에게 즐거움을 주는 코딩하는 사람
  • 요리사: 필요한 것을 제공하는데 집중하는 사람
  • 건축가: 시스템을 설계하고 솔루션과 도구를 적극 활용해서 구축하는 사람
  • 직장인: 주어진 일에 충실하고 성실한 사람

개발 직군이 타 직군에 비해 좋은 것은 어떠한 성향이든 기업의 성장 단계별로 직장이 아닌 직업으로서 개발자의 커리어 패스를 만들어가는 것이 가능합니다.

  • 1명 ~ 5명 이하의 S/W 기술자가 있는 기업: MVP를 만들어내는 최소한의 기술력과 전문성을 갖추는데 집중합니다.
  • 5명 ~ 수십명의 S/W 기술자가 있는 기업: 아키텍처 전략 수립과 개발 문화를 정착하기 위해 기술적인 부채를 해결하고 팀원들을 이끌어가는 능력을 갖추는데 집중합니다.
  • 수십명 이상 S/W 기술자가 있는 기업: 조직의 역할과 책임을 분명히 하고 기술에 대한 전략과 비전을 제시합니다.

본인만의 기술 커리어 패스를 만들어가는 것은 주어진 일과 직업의 기본에 충실하되 그 위에 자신만의 경험을 쌓아가는 여정입니다.

하지만 기업은 S/W 경쟁력을 갖추기는 커녕 S/W 개발자를 고용하는 것 조차 쉽지 않습니다. 잘 생각해보면 같은 이유 때문에 개발 직업에 대한 장점과 단점이 있는듯 합니다. 그 이유는 크게 3가지로 다음과 같습니다.

1. S/W 비즈니스 모델이 불확실

S/W 개발 조직을 운영하면 기업의 비즈니스 모델을 구축하고 경쟁력을 확보할 수 있으나 경쟁사간의 우위를 확보할 수 있을지 확신할 수 없습니다. 기업 규모에 상관없이 신규 비즈니스 모델에 대한 가설을 검증하고 증명하는 실패의 과정은 필수적인데 그 비용을 기업은 감수하기 쉽지 않습니다.

2. 개발 업무에 대한 어려운 접근성

S/W 개발의 기본적인 업무들는 코딩이 아닙니다. 개발 업무 정의, 솔루션 확보, 서버/네트워크 인프라 관리, 아키텍트 설계, 데이터 모델 수립, 운영 및 유지보수, 개발, 디자인 등의 업무를 이해하고 있어야 합니다. 그래야 인하우스나 아웃소싱으로 프로젝트를 진행할 때 의사소통이 원할하게 진행될 수 있습니다.

당연히 업무 담당자들은 개발 업무에 대한 어려운 접근성을 가지고 있습니다.

3. CTO 마인드의 부재

개발자들은 다른 직군들에 비해 본인만의 기술 커리어 패스를 만들어가는 것이 중요합니다. 그래서 S/W 경쟁력을 원하는 기업은 이에 대한 교육과 지원을 제공해야 합니다.

개발자는 넘쳐나는데 채용할 만한 사람이 없다는 것은 기업과 개발자 모두 생각해 볼 과제입니다.


이번 주에 2개의 의미있는 개선이 이뤄졌습니다.

  1. Windows 10 이상 운영체제에서 개발/실행 환경에 필요한 설정을 자동화하는 install.bat 설치 스크립트가 추가 되었습니다. (Linux, Mac 용 install.sh는 테스트중 입니다)
  2. HandStack내 화면 개발에 사용중인 오픈소스 55 종을 cdnjs, jsdelivr, unpkg 설치 과정에서 한번에 내려 받도록 개선 되었습니다. (자세한 목록은 libman.json을 참고하세요)

향후 소스 코드를 내려받고 한번 클릭으로 개발/실행 환경에 필요한 S/W 설치와 종속 라이브러리의 버전 업데이트를 자동화하며 배포 프로그램의 파일 크기가 절감됩니다.

한 주간의 여정 (2024-03-04 ~ 2024-03-08)

  • 빠른 시작 문서 개선
  • 기본 modules 소개, 모듈 관련 문서 내용 추가
  • syn.js 라이브러리 syn.domain 추가
  • syn.js 주요 사용법
  • HandStack 개발 환경 설치 스크립트 개발
  • ack 실행 환경 설치 스크립트 개발
  • 클라이언트 라이브러리 CDN 정리