개발자도 하나의 직업일 뿐이다

💡 10분 안에 이런 내용을 알려드려요

  • 개발의 'ㄱ'도 모르는 생초보 비전공자를 위한 개발자 입문 가이드
  • 공부를 시작하고 4개월 만에 스타트업 개발자로 취업한 저자의 생생한 조언
  • 직업으로서의 개발자에 관한 오해, 장단점

※ [오늘부터 개발자] 시리즈의 콘텐츠입니다. ※

저자 김병욱

29살에 처음 개발에 뛰어들어 4개월 만에 취업에 성공한 개발자, (전)다노 백엔드 개발자

*본 콘텐츠는 2021년 11월에 발간된 〈오늘부터 개발자〉의 본문을 퍼블리의 시선으로 발췌해 구성했습니다.

🙋🏻 개발자가 되면 회사 생활은 어떤가요? 직업 만족도는 높은가요? 

🙋🏻‍♂️ 저는 나이도 많고, 심지어 비전공자인데... 가능할까요?

🙋🏻 개발자들은 정말 다 연봉이 높나요?

현장에서 개발자로 일을 하며, 또 온라인에서 개발 관련 강의를 하며 가장 많이 듣는 질문이다. 개발 공부를 시작하려고 주변에 물어보면 대부분 안 좋은 이야기들뿐이고, 늦은 나이에 공부를 시작해서 과연 개발자가 될 수 있을지, 막상 공부를 마치고 개발자가 되었는데 현실에 적응하지 못하면 어떻게 할지 등에 대한 걱정이 많은 것도 사실이다.

 

모든 직업이 그렇듯 개발자 역시 장점도 많고 단점도 많다. 하지만 개발자도 하나의 직업일 뿐이다.

 

적성에 잘 맞는다고 해서 그 일을 잘하는 것도 아니고, 적성에 맞지 않는다고 해서 그 일을 못하는 것도 아니다. 그렇기에 너무 부담감을 가질 필요도 없고, 다른 사람들의 이야기에 너무 휘둘릴 필요도 없다. 내가 그 직업에서 느끼는 장점이 단점보다 크다면 내게 잘 맞는 일일 것이다.

 

결국 본인이 직접 현장에서 개발자로 일을 해보면서 나의 적성과 잘 맞는지 확인해 보는 것이 좋다. 본인이 해보지 않으면 제대로 알 수 없다. 해보고 싶으면 직접 부딪쳐 보고 스스로 판단해야 한다.

 

현재 개발자로 일하고 있는 입장에서 봤을 때 개발자에 대한 업계의 대우, 주어진 프로젝트를 스스로 해결해 가면서 느끼는 만족도 등은 다른 직군에 비해 높다고 본다.
 

하지만 나는 개발자가 되어 행복한 게 아니라, 다른 업종에서 일하다 개발자가 되면서 '내가 원한다면 언제든 새로운 직업을 가질 수 있구나'라는 자신감을 얻어서 행복하다.
 

100세 인생이라고 하는데, 살아가면서 직업을 5번쯤 바꾼다고 생각하면 이런 자신감은 정말 중요하다. 나는 단지 그중에서 하나의 직업으로 '개발자'를 택했을 뿐이다.

 

우리가 막연히 두려움을 느끼는 것은 그 분야를 잘 알지 못하기 때문일 확률이 높다. 막상 하고 나면 아무것도 아닌데, 시작하기 전에는 그렇게 두려움이 큰 것이다. 이 글을 통해 막연하던 개발자라는 직업을 알아가고, 당신이 원한다면 언제든 새로운 직업을 가질 수 있다는 자신감을 가졌으면 좋겠다. 

개발자는 어떤 일을 할까?

우리는 영화나 드라마를 통해 개발자라는 직업에 대한 환상을 가지고 있다. 나 역시도 처음에는 그랬다. 밤을 새워 프로그램 하나를 뚝딱 만들어 내는 개발자가 너무 멋있어 보였다. 하지만 프로그램을 만들 때 한 명의 개발자가 모든 일을 하는 건 아니다.

 

그럼, 우리가 이용하는 프로그램(서비스)은 어떻게 만들어질까? 개발자는 어떤 일을 하는 사람일까? 우리가 자주 이용하는 쇼핑몰을 예로 들어보자. 

 

  • 먼저 고객은 물건을 구매하기 위해 쇼핑몰에 접속한다.
  • 회원가입을 하고, 마음에 드는 물건을 골라 장바구니에 담는다.
  • 쇼핑을 마치면 결제창으로 넘어가 주소를 입력하고 쿠폰, 적립금 등을 사용해 결제한다.
  • 그러면 며칠 뒤 구매한 물건이 배송된다.
  • 물건에 이상이 없으면 구매확정을 한 후 후기를 남기기도 하고, 사이즈가 맞지 않거나 기대와 다르면 반품할 수도 있다.

일반 고객이 물건을 구매하고 배송을 받기까지의 행동은 이러한 패턴이 전부일 수 있다. 하지만 쇼핑몰 안에서 돌아가는 프로그램은 그렇게 간단하지 않다.
 

일단 고객들에게 보여지는 쇼핑몰 페이지는 메인 페이지부터 카테고리 페이지, 제품 상세 페이지, 장바구니 페이지, 결제 페이지 등 여러 개의 페이지들로 구성된다. 개발자는 쇼핑몰을 구성하는 이러한 모든 페이지를 만들어야 하고, 또 고객이 입력한 각각의 데이터를 데이터베이스에 저장해야 한다.