프로그래밍으로 할 수 있는 일

이번에는 프로그래밍을 공부한 후의 진로, 직업군에 대해서 알아볼 것이다.

프로그래밍을 공부함으로써 뻗어나갈 수 있는 진로는 정말 엄청나게 많다. 현 시대에 이만큼 영역을 넓힐 수 있는 분야가 또 있을까 싶을 정도이다. 분야가 너무 많아서 디테일하게 말하긴 조금 어렵지만, 몇 가지의 유명한 개발 관련 분야를 아주 간략하게만 이야기해 보겠다. 아래의 이야기들은 외우거나 꼭 알아야 할 내용은 아니니 가볍고 즐거운 마음으로 읽어보길 바란다. 그리고 내가 무엇에 관심이 있는지, 끌리는 영역이 무엇인지 생각해 보면 읽는 재미가 더해질 것이다.


목차

  • 직장인 계열
    1. Web 개발자
      • Front-end 개발자
      • Back-end 개발자
    2. App 개발자 (Android / iOS)
    3. 게임 개발자
    4. 해커(Hacker) & 크래커(Cracker)
    5. 데이터베이스 관리자(DBA)
    6. 데이터 엔지니어, 데이터 분석가, 데이터 과학자
    7. 클라우드(Cloud) 엔지니어
    8. 풀 스택(Full-Stack) 개발자
    9. AI(머신러닝/딥러닝) 개발자
  • 프리랜서 계열
    • 외주 개발자
    • 디지털 노마드
  • 사업가 계열
    • CEO (IT 사업가, 스타트업 창업자)
    • CTO
  • 투자자 계열
    • 알고리즘 트레이더
    • 퀀트(Quant) 투자자
  • 기타 설명하지 못한 직종
    • 개발 관련 직군
      • 운영체제(OS), 펌웨어 개발자, 사무자동화 등
    • 비개발 관련 직군
      • 서비스 기획자(PO, Product Owner)
      • 사내 IT 솔루션 관련 기획자
      • UI/UX 디자이너
      • 개발직군 채용 담당자(Tech recruiter) 등

직장인 계열

1. Web 개발자 (Front-end / Back-end)

약 2011년 즈음, 스마트폰이 보급되고 나서 폭발적으로 성장했던, 그리고 2022년 기준으로 꾸준히 성장하고 있는 영역이다. 우리가 컴퓨터와 스마트폰에서 사용하는 대부분의 통신 기술은 Web 기술로 만들어져 있다. 이 분야는 일자리가 엄청나게 많아서 열심히 공부하면 앞으로 20년은 취업 걱정이 없을 것이다. 웹 개발자는 보통 2종류(Front-end / Back-end)로 나누어진다.

Front-end 개발자

웹 브라우저(Chrome, Safari 등)에서 우리가 눈으로 볼 수 있는 부분을 구현하는 개발자이다. 웹사이트를 보면 다양한 모양의 레이아웃과, 버튼과 링크, 입력칸 등이 있는데, 프론트엔드 개발자들은 유저의 눈에 보이는 것과 관련된 기능이나, 눈에 보이지는 않더라도 브라우저 내에서 작동하는 인터렉션, 로직 등을 구현하기 때문에 실제 사용자들과 가장 가까운 거리에 있는 개발자이다. 그리고 Server(서버)에 데이터를 보내주거나(Request 라고 함), Server에서 보내주는(Response 또는 Push 라고 함) 데이터들을 웹 브라우저에서 처리하는 등의 역할을 맡고 있다.

Back-end 개발자 (서버 개발자)

흔히 Server(서버) 개발자 라고도 한다. Server 는 'serve(제공하다)' 라는 단어에 '-er' 접미사를 붙인 단어인데, 배드민턴이나 배구에서 서브한다고 할 때 그 서브와 같다. 쉽게 말하면 '뭔가를 제공해 주는 녀석' 이다.
웹 브라우저에서 Front-end 개발자가 유저의 행동과 관련하여 서버로 요청(Request)을 보내면, Back-end 개발자가 만든 서버에서는 그 요청을 적절하게 분석/가공/후처리를 하고 적절한 응답(Response)을 제공해 주는 역할을 한다. 서버 측에서 필요하다면 자체적으로 Push 를 보내기도 한다.
우리가 웹사이트를 보거나 게임을 할 때 흔히 "서버가 다운됐다" 라는 이야기들을 들어본 적이 있을 텐데, 그 서버가 이 서버이다. 전체 시스템의 '중앙관리장치' 라고 말할 수 있다.

여기서 'Response' 와 'Push' 의 차이는 Request(요청) 가 있고/없고의 차이이다. Request 에 대한 결과물을 보내주는 것을 'Response' 라고 하고, 별도의 요청 없이 서버에서 자체적으로 보내는 것을 'Push' 라고 한다. 우리가 아무것도 하지 않아도 자동으로 받게 되는 스마트폰 앱의 '푸시 알림' 이 이걸 말하는 것이다.

2. App 개발자 (Android / iOS)

위와 마찬가지로 스마트폰 보급 이후 폭발적으로 성장하고 있는 분야이다. 안드로이드의 플레이스토어, 아이폰의 앱스토어에 올라와 있는 대부분의 앱들은 앱 개발자가 만들어서 올리는 것이다. 우리는 앱 개발자들 덕분에 스마트폰을 편리하게 사용할 수 있게 되었다.

앱 개발자는 위의 Front-end 영역과 하는 역할이 거의 비슷하다. 사실 'App 개발' 이라는 영역 자체가 Front-end 개발 안에 포함된다고도 할 수 있는데, 정확하게 정리하면, 위에서 말한 Front-end 개발은 Web Front-end 개발을 말하고, 여기서 말하는 App 개발은 App Front-end 개발을 말하는 것이다.
다만 그게 브라우저에서 동작하는 Web 이냐 / 스마트폰에서 동작하는 App 이냐에 따라서 사용하는 프로그래밍 언어나 도구, 환경, 설정들이 달라진다. 역할은 비슷하지만, 각 분야에 대한 지식과 전문성이 따로 있어서 똑같은 건 아니다.

특이한 점으로는, 약 2015년쯤부터 Hybrid App(Web 기술로 만든 App) 이라는 기술이 급격하게 성장함에 따라서 Web Front-end 개발자들이 Web 뿐만 아니라 App 까지 만들 수 있게 되었다. Hybrid App 의 비전은 미래에 훨씬 더 커질 전망이다.

3. 게임 개발자

이 세상의 모든 게임 또한 프로그래밍으로 만들어져 있다. 여태까지 살면서 몇 살에 어디에서 어떤 종류의 게임을 했건 마찬가지이다. 컴퓨터로 했건, 인터넷으로 했건, 스마트폰으로 했건, 오락실에서 했건 모두 다 소스코드로 만들어진 결과물을 우리가 플레이했던 것이다. 프로그래밍을 공부하면 이러한 게임을 만들 수 있다. 나만의 게임을 만들고 나만의 세상을 창조할 수 있다.

4. 해커(Hacker)와 크래커(Cracker)

어떤 시스템을 해킹하거나, 공격하는 것 또한 모두 다 프로그래머들이 하는 일이다.
사실 실제 업무에서 말하는 해커(Hacker)는 '보안 전문가' 를 나타내는 좋은 의미의 뜻이다. 회사의 중요한 보안 업무를 담당하거나, 보안 업체에서 일하기도 한다. 이를 '화이트 해커' 라고 표현하기도 한다. 그리고 보통의 사람들이 나쁜 의미로 말하는 '해커'는 사실 '크래커(Cracker)' 라고 말하고, '블랙 해커' 라고 표현하기도 한다.

프로그래밍을 공부하고 나면 특정 서비스를 공격하거나, 누군가의 컴퓨터에 몰래 침입하여 정보를 빼낸다거나, 여러 가지 악행을 저지를 수 있다. 그리고 반대로 그런 악행을 저지할 수도 있다.
이처럼 프로그래머는 자신의 목적이나 성향에 따라 범죄를 저지를 수도 있고, 범죄를 저지할 수도 있다. 마치 '탱크' 가 누군가에게는 평화의 상징이 되기도 하고, 누군가에게는 공포의 대상이 되기도 하는 것처럼. 어떤 종류의 개발자가 되든, 항상 보안에 대해 신경 써야 할 것이다.

프로그래밍을 공부하여 경찰이 되느냐, 범죄자가 되어 감옥에 가느냐는 각자의 선택에 따라 달라진다. 나는 당신이 프로그래밍을 공부해서 세상에 긍정적인 영향을 주길 바란다. 우리의 세상이 지금까지 발전하고 평화가 유지되는 것은 많은 프로그래머들이 더 좋은 세상을 만들고자 했기 때문이다. :-)

5. 데이터베이스 관리자(DBA)

우리의 삶에는 Data가 빠질 수 없다. 데이터란, 우리의 삶에서 '변할 수 있는 모든 것' 을 말한다. 예를 들면 사람의 이름, , 몸무게, 나이, 성별, 직업, 지역, 인구수, 물컵에 담긴 물의 양, 카드 이용내역, 현재 시각, 오늘 소비한 칼로리, 주고받은 메시지의 수, 결혼 여부, 오늘 아침을 먹었는지 여부 등등 우리 인생의 모든 것들이 데이터가 된다. 이와 같은 데이터를 '정형 데이터(Structured data)' 라고 하고, '비정형 데이터(Unstructured data)' 라는 것도 존재한다. '비정형 데이터' 의 예를 들면, 블로그의 게시글(텍스트), 뉴스 기사, SNS의 사진, 유튜브 영상, 스트리밍 음악, 영화의 자막 등 정형화 시키기 어려운 데이터를 말한다.

현재 우리들의 세상에서 발생하는 데이터의 양은 '정형 데이터' 가 약 10~20%, '비정형 데이터' 가 약 80~90% 를 차지하고 있다. 그럼 이러한 수많은 데이터를 저장하고 관리할 수 있는 무언가가 필요한데, 그게 Database(줄여서 DB)이다.
Database 시스템을 관리하는 사람을 데이터베이스 관리자, DBA(Database Administrator) 라고 한다.

6. 데이터 엔지니어, 데이터 분석가, 데이터 과학자

이름에서 느낌이 오는가? 이들은 데이터를 주로 다루는 사람들이다.

데이터 엔지니어(Data Engineer)

위에서 설명한 '데이터베이스 관리자(DBA)' 와 이름과 비슷하지만, 데이터 엔지니어의 역할은 다르다. 데이터 엔지니어는 데이터 분석가와 데이터 과학자가 데이터를 잘 활용할 수 있도록 전체적인 시스템을 구성하고 관리하는 사람이다. 주로 데이터의 흐름(파이프라인)을 설계하거나 구축하는 등의 역할을 한다.

웹사이트나 스마트폰 앱을 예로 들면, 유저들이 무엇을 클릭했는지, 특정 영역에서 스크롤이 얼마나 오래 머물렀는지, 어떤 화면으로 이동했는지 등, 유저들이 행동한 데이터들을 저장하고 보관하는 일을 하는 편이다. 데이터 엔지니어가 수집한 데이터를 활용해서 데이터 분석가와 데이터 과학자들은 통계 데이터를 만들어서 현 상황을 분석하고, 유저의 유의미한 행동들을 찾아낼 수 있다.

데이터 분석가(Data Analyst)

사실 이 분야는 프로그래밍과는 크게 연관은 없지만, 그래도 알아두면 좋을 것이다. 데이터 분석가는 데이터 엔지니어로부터 수집된 데이터를 기반으로 여러 가지 인사이트를 얻고 현명한 의사결정을 내릴 수 있도록 가이드를 제시해 주는 사람이다.

예를 들어, 어떤 웹사이트의 이용자 데이터를 분석해 보니 85%의 유저가 20~24살이고, 그 중 65%가 남성이었고, 이 웹사이트의 남성들은 '자동차' 라는 단어를 가장 많이 검색했다고 생각해 보라. 그렇다면 이 웹사이트에는 어떤 광고를 하는 게 좋을까? 상대적으로 저렴한 중고차를 광고해 보면 어떨까? 또는 자동차와 관련된 아르바이트를 추천해 보면 어떨까? 대략 이런 식으로 데이터를 통해 의사결정을 내릴 수 있도록 도와주는 역할이 바로 데이터 분석가가 하는 일이다. 더불어 데이터 분석에 관련된 도구를 유용하게 사용할 줄 아는 사람들이다.

데이터 과학자(Data Scientist)

데이터 과학자는 위에서 데이터 엔지니어가 모아놓은 데이터를 활용해서 유저들의 행동을 예측하거나, 유저들이 어떤 관심사가 있는지, 특정 물건을 구매한 사람들의 공통점은 무엇인지, 미래를 예측하고, 유저들을 분석해서 어떻게 해야 원하는 목표를 달성할 수 있을지 고민하고, 통계학적 예측 모형을 만들거나 심도 있게 연구하는 사람이다. 바로 위에서 설명한 데이터 분석가를 모두 포함하면서, 더 높은 수준의 역량을 요구하는 직군을 말한다.

데이터 과학자를 한 문장으로 표현하면 이렇게 말할 수 있다.

"통계학자만큼 수학적/통계학적 지식이 뛰어나면서, 개발자만큼 프로그래밍 역량이 뛰어난 사람"

간단히 말하면, "통계학자 + 개발자" 라고도 할 수 있다. 어려워 보이지 않는가? 실제로도 고급 인력이다. 조금 더 구체적으로 이야기를 해보면 아래와 같다.

  • 수학/통계적 접근으로 프로그래밍을 활용하여 데이터를 다룰 수 있고 (Hard Skill 이라고 함)
  • 데이터 시각화가 가능하면서
  • 특정 영역에 대한 깊은 지식이 있고 (Domain 지식이라고 함)
  • 커뮤니케이션 능력이 좋은 사람 (Soft Skill 이라고 함)

데이터 과학 분야에서는 AI(머신러닝/딥러닝)를 접목시키는 경우가 많다. 엄청나게 방대한 정형/비정형 데이터들을 분석하기 위해서 인공지능의 도움은 필수가 된지 오래다. 이처럼 과거의 데이터를 기반으로 통찰력을 발휘하여 미래에 대한 의사결정을 하는 사람이 데이터 과학자이다. 현재도 아주 중요한 역할을 하고 있지만 미래에는 더할 나위 없이 중요한 역할을 할 멋진 직업이다.

7. 클라우드(Cloud) 엔지니어

클라우드(Cloud)란, 2010년대 들어서 대중적으로 사용하게 된 단어인데, 인터넷을 기반으로 서버를 동작시키는데 필요한 컴퓨터/시스템/환경 등을 말한다. 과거에는 모두 물리적인 PC를 직접 관리하면서, 서버 컴퓨터의 용량이 부족해지면 하드를 직접 갈아끼우거나, 램을 꽂아서 성능 업그레이드 하거나, 컴퓨터의 과열 방지를 위해 서버 컴퓨터실에 에어컨을 틀어놓는 등의 일을 했었다. 그러나 약 2010년 쯤 부터 물리적인 컴퓨터를 직접 손으로 번거롭게 관리하는 것이 아니라, 인터넷을 통해 마우스 클릭 몇 번, 키보드 타이핑 몇 번으로 원하는 컴퓨터를 가상으로 만들어내거나, 시스템을 구축하는 등의 작업을 할 수 있게 되었다.

이러한 클라우드 컴퓨팅 기술은 스마트폰의 대중화에 버금갈 만큼의 전 세계적으로 초특급 대혁신이었는데, 이에 선구자적인 역할을 했던 것이 미국의 회사 아마존(Amazon) 이다. 현재 지구상의 30% 이상의 서버가 Amazon 에서 만든 'AWS(Amazon Web Service)' 라는 플랫폼을 사용하고 있다. 경쟁사로는 마이크로소프트의 'Azure', 구글의 GCP(Google Cloud Platform) 등이 있다. 클라우드 엔지니어는 이러한 클라우드 시스템/플랫폼을 회사에서 원하는 만큼 다룰 줄 아는 사람을 말한다. 이에 관련된 자격증도 다양하니, 클라우드 엔지니어가 되고 싶다면 자격증 공부를 하는 것도 좋다.

8. 풀 스택(Full-Stack) 개발자

풀스택 개발자는 위에서 말한 Front-end / Back-end / 데이터베이스 / 클라우드 영역까지 모두 '필요한 만큼' 다룰 줄 아는 사람을 말한다. '필요한 만큼' 의 기준은 각자 다르기 때문에 모호한 편이지만, 보통은 혼자서 1인 창업이 가능할 정도로 모든 영역의 구현이 가능하다면 풀스택 개발자라고 부를 수 있다. 혼자서 북 치고 장구 치고, A부터 Z까지, 밑바닥부터 지붕까지 다 만들 수 있는 개발자이다.
1인 창업을 꿈꾼다거나, 혼자서 나만의 서비스를 만들어보고 싶다면 풀스택 개발자가 될 수 있도록 다양한 분야를 함께 공부하고, 다양한 경험을 쌓고, 실력을 갈고 닦는 것이 좋다.

9. AI(머신러닝/딥러닝) 개발자

AI 개발자는 인간의 능력을 컴퓨터화 시켜서 인간을 초월하는 능력을 만들어내는 사람이다.
우리는 아주 어린 시절부터 글자를 학습해서 숫자 2와 3을 구분하고, 개와 고양이를 구분할 수 있는데, 컴퓨터도 학습이 가능하다. 컴퓨터에게 수많은 데이터들을 주입하여 특정 머신러닝/딥러닝 알고리즘을 이용해서 학습시키면, 카메라에 비춰지는 글자가 무슨 글자인지, 자동차 번호판에 뭐라고 적혀있는지, 방금 문 열고 들어온 사람이 마스크를 썼는지 안 썼는지, 철수인지 영희인지 구분하거나, 소설책의 줄거리를 요약하거나, 키워드만 입력하면 그에 맞는 그림을 그릴 수 있다. 우리가 사용하는 삼성 스마트폰의 빅스비, 애플의 시리, 음성인식기술, 구글 번역기, 네이버 파파고, 자율주행기술, 마스크 착용 검사기 등 모두 AI 기술이 적용된 프로그램들이다.

AI의 역사는 아주 오래되었는데, 1950년에도 AI는 있었다. 그러나 AI가 빛을 발하기 시작한 것은 오래되지 않았다. 왜냐하면 AI 학습을 위해서는 엄청나게 거대한 데이터가 필요했고, 그 데이터들을 분석할 수 있는 컴퓨팅 파워가 필요한데, 과거에는 그게 어려웠기 때문이다. 그런데 현대에서는 수많은 사람들이 각자의 스마트폰에서 엄청난 데이터를 만들어내고 있고, 컴퓨터 성능의 대단한 발전으로 충분히 가능해졌다. 그래서 비교적 최근에 주목받기 시작한 것이다.

2016년 3월에는 구글의 딥마인드라는 회사에서 만든 '알파고' 라는 바둑 두는 AI가 등장했는데, 이때 AI 알파고가 전 세계의 최정상 바둑 기사 이세돌과의 대결에서 4:1 로 승리하면서 전 세계 사람들을 경악케 하는 일이 벌어졌다. 이 시점부터 AI에 대한 관심이 폭발적으로 증가했다고 볼 수 있을 것이다.

그리고 2022년 12월, OpenAI 라는 미국의 회사에서 ChatGPT 라는 AI 챗봇을 공개했는데, 이 또한 전 세계를 경악케 하는 거대한 사건이 되어버렸다. 이 챗봇은 지구상에 존재하는 모든 분야에 대해서 엄청난 지식을 가지고 있고, 내가 궁금해하는 모든 종류의 질문을 물어볼 수 있다. 영어, 한국어, 중국어 등 어떤 언어로도 질문이 가능하고, 컴퓨터, 심리학, 경제학, 수학, 과학, 언어, 외국어, 사회학, 생명공학 등 모든 부분에 대해서 매우 높은 수준(대학원 석사 이상의 수준)의 답변을 할 수 있는 AI 가 탄생한 것이다.

ChatGPT 는 개발자가 원하는 코드를 대신 작성해 주거나, 오류의 해결책을 제시하는 것도 가능하다. 이 책을 공부할 때에도 OpenAI 의 ChatGPT 를 적절하게 이용한다면 큰 도움을 얻을 수 있다. 공부할 때 뿐만이 아니다. 실제로 현업에서 업무를 하는 사람들에게도 ChatGPT 는 매우 훌륭한 조력자 역할을 한다. 따라서 당신은 이 책을 공부하면서 반드시 ChatGPT 를 적극적으로 활용하는 습관을 길러야 한다.

우리는 앞으로 얼마나 강력한 AI 들을 마주하게 될까? 상상하기도 어렵지만, 두려움보다는 기대감으로 접근을 하고, 어떻게 하면 AI를 우리의 삶에서 유용하게 활용할 수 있을지에 대해서도 계속 고민해 보길 바란다. AI는 두려움의 대상이 아니라, 활용의 대상이다.

AI를 직접 구현하는 개발자가 되기 위해서는 수학(선형대수학, 확률과 통계, 미적분 등)을 잘해야 한다. 그리고 이쪽으로 공부하다 보면 위에서 설명한 데이터 과학자로도 뻗어나갈 수도 있다.


프리랜서 계열

외주 개발자

특정한 회사에 소속되지 않고, 자유롭게 활동하면서 남들이 요청하는 개발 업무를 대신해 주고 돈을 받는 일을 하는 사람들이다. 외주 개발자는 남들이 필요로 하는 개발 역량을 돈을 받고 대신 해준다. 이런 형태를 '외주' 라고 한다.

개인으로 활동하는 외주 개발자가 아닌, 외주 개발 전문 회사도 있다. 외주 개발 전문 회사에 소속된 개발자들은 외주 개발자가 아니라 그냥 직장인 개발자이다. 여기서 말하는 외주 개발자는 개인을 지칭한다.

디지털 노마드

프리랜서 개발자들을 종종 디지털 노마드라고 표현하기도 하지만, 별도로 이야기를 해보았다. 디지털 노마드(Digital nomad)란, 디지털(digital)과 유목민(nomad)을 합성한 단어로, 공간의 제약 없이 원하는 국가/지역/장소에서 원격근무 또는 경제활동을 하면서 자유롭게 생활하는 사람들을 말한다.
실제로 프리랜서 개발자들 중에는 이렇게 살아가는 사람들이 꽤 많다. 디지털노마드의 삶을 살 수 있는 특이한 직업군이 몇 가지가 있는데, 개발자와 투자자가 그 중 가장 대표적인 직업일 것이다.


사업가 계열

CEO (IT 사업가, 스타트업 창업자)

CEO 는 Chief Executive Officer 의 약자로, 특정 기업의 경영자를 뜻한다.
프로그래밍을 알면 내가 하고 싶은 다양한 종류의 사업을 계획하고 실행할 수 있다. 프로그래밍은 인생에서 반복적으로 일어나는 것들을 자동화하는 것이라고 한 것을 기억하는가? 인생을 살다 보면 불편한 것들이 한두 가지가 아닐 것이다. 인생의 불편함을 해결해 주는 것만으로도 돈을 벌 수 있고, 사업이 된다. 생각해 보라. 대부분의 사업은 누군가의 불편함을 해결해 주는 것, 무언가를 도와주는 것에서 시작된다. 대표적인 예시를 몇 가지 나열해 보겠다.

  • 알바몬, 당근마켓, 따릉이, 알람, 날씨, 가계부, 카메라 등 일상 앱
  • 카카오톡, 유튜브, 인스타그램, 페이스북, 트위터 등 SNS
  • 배달의민족, 카카오헤어샵, 카카오택시, 직방, 다방, 네이버부동산 등 O2O 서비스
    • O2O 서비스란? Online to Offline 의 줄임말로, 오프라인에 있던 것을 온라인으로 연결하는 것

우리가 일상생활을 하면서 자주 사용하는 이 모든 것들을 생각해 보라. 얼마나 우리의 삶이 편해졌는가? 인생에서 반복적으로 일어나는 문제들을 해결해 줌으로써 위의 사업들은 대단히 성공했고 많은 부를 창출했다.
지금은 어떤 문제들을 해결할 수 있을까? 그걸 생각할 수 있다면 성공하는 사업가가 될 수 있을 것이다.

CTO

CTO는 Chief Technical Officer 의 약자로, CEO와 거의 동등한 레벨에 있는 기업 내의 '최고 기술 책임자' 를 말한다. CEO의 지식수준으로는 하기 어려운 기술적인 영역을 CTO가 책임지며 CEO와 함께 회사를 운영한다. 둘 이상이 공동 창업을 하는 상황에서 누군가 소프트웨어 개발에 대한 지식이 매우 높다면, 그 사람이 CTO를 맡아서 기업의 기술적인 부분을 책임지고 운영하게 된다.

보편적으로는 소규모 창업 그룹을 보면 다음과 같은 형태로 역할을 맡는다.

  • 사업 아이디어가 있고 추진력도 있으며, 기술적인 역량도 있는 사람: 1인 스타트업 창업(혼자서 CEO + CTO) 가능
  • 사업 아이디어가 있고 추진력도 있지만, 기술적인 역량은 없는 사람: CEO
  • 사업 아이디어가 없거나 추진력은 없지만, 기술적인 역량은 있는 사람: CTO

투자자 계열

2020년 코로나19 팬데믹 이후로 주식/코인 등 투자에 대한 열풍이 불면서 대중들의 관심이 상당히 높아진 분야이다.

알고리즘 트레이더

투자 행위(매수/매도/증권분석 등)를 프로그래밍하여 내가 원하는 알고리즘(전략)에 따라 자동으로 주식이나 코인을 거래할 수 있도록 만드는 개발자들이 많아지고 있다. 이런 방식의 투자를 알고리즘 트레이딩(Algorithmic Trading) 이라고 한다. 알고리즘 트레이딩 시스템을 만들면 모든 투자대상에 대한 분석이나 매수/매도를 자동으로 하도록 만들 수 있다.

자신만의 알고리즘으로 트레이딩 시스템을 만들고 싶어서 프로그래밍을 공부하는 사람들도 아주 많다. 24시간 나 대신 자동으로 매매를 할 수 있다는 것은 아주 매력적인 일이다.

퀀트(Quant)

계량적인(Quantitative) + 분석가(Analyst) 의 합성어로, 투자 대상의 가치분석을 컴퓨터로 계산하여 해당 가치를 수치적으로 파악하고 투자 결정을 내리는 투자자를 말한다. 프로그래밍 스킬이 자주 사용되는 편이며, 이것으로 주식의 종목을 발굴하거나, 투자에 대한 의견을 내는 등의 가치를 창출할 수 있다. 이 분야의 가능성 또한 무궁무진하다.


기타 설명하지 못한 직종

개발 관련 직군

이 외에도 프로그래밍을 잘 하면 뻗어나갈 수 있는 분야가 엄청나게 많다. 각종 프로그램 개발자(포토샵, 게임, 한글, MS Word, 엑셀, 증권사 HTS 등), 운영체제 개발자(Windows, Mac, Linux 등), 펌웨어 개발자, 사무자동화 등등 너무 많아서 다 나열하기가 어려울 정도이다.

비개발 관련 직군

프로그래밍을 할 줄 알고 개발직군에 대한 이해를 갖추게 된다면, 서비스 기획자(PO, Product Owner), 사내 IT 솔루션 관련 기획자, UI/UX 디자이너, 개발직군 채용 담당자(Tech recruiter) 등의 일도 할 수 있다. 당연히 이것 말고도 엄청 많다.


정리하기

위의 모든 것들이 프로그래밍을 공부한 다음에 나아갈 수 있는 방향이다. 어떤가? 정말 다양한 종류의 사람들이 있지 않은가? 위에는 대표적인 것들만 나열한 것이고, 여기서 언급한 내용들 말고도 셀 수 없이 많다. 이 글에서 설명한 내용은 일부분에 불과하다.

세상은 넓고 할 일은 많다. 그런데 프로그래밍을 할 줄 알면 아주 넓은 세상에서 다양한 일을 할 수 있다. 프로그래밍을 잘 한다면 얼마나 좋은 회사를 갈 것인가가 고민이지, 취업 자체는 걱정이 없을 것이다.


생각 해보기

내가 무엇을 좋아하고, 어떤 것에 흥미를 느끼는지 생각해 보자. 프로그래밍은 내가 좋아하고 관심 있는 영역에 대한 개발자가 되는 것을 목표로 하는 것이 좋다. 나는 어떤 개발자가 될 것이며, 미래에 어떤 사람이 되길 희망하는지 생각해 보자.

뛰는 놈 위에 나는 놈, 나는 놈 위에 즐기는 놈이 있다는 말이 있다. 즐기기 위해서는 나의 적성과 취향을 잘 알아야 하며, 자신의 적성에 잘 맞는 프로그래밍 공부는 당신을 훌륭한 개발자로 성장시킬 것이다.


궁금증 / 질문 / 개선점이 있다면 꼭 댓글을 달아주세요. 제가 최선을 다해 도와드리겠습니다. 여러분들의 최고의 학습 친구가 되어드리겠습니다.

#인생프로그래밍 #개발자렉스 #프로그래밍 #프로그래머 #개발자 #개발입문 #프로그래밍입문서적 #코딩교육 #코딩무료교육 #파이썬 #자바스크립트 #자바 #파이썬기초 #파이썬독학 #파이썬책 #혼자공부하는파이썬 #혼공파 #자바스크립트책 #앱개발 #어플개발 #ProgrammingOfLife #programming #programmer #coding #software #developer #python #javascript #java

profile
🔥 from Abstraction to Realization

0개의 댓글