내가 바라보는 IT 업계의 미래 (소모임 회장직을 받으며)
기술은 끊임없이 변하기 때문에, 나는 변하지 않는 것에 집중한다. - 제프 베조스, 아마존 창업자
안녕하세요. 인트아이 5대 회장 정보통신공학과 박승재입니다.
이번 2학기부터 인트아이 운영을 맡게 되며, 앞으로 소모임을 어떻게 운영해야 소모임 회원분들에게 이득이 될지 고민해 보았습니다.
저희 인트아이는 취업 정보 교류 및 자기 계발을 위해 설립된 정보통신공학과의 프로그래밍 소모임입니다.
ChatGPT를 이용한 프로그래밍
인공지능 기술의 급격한 발전으로 앞으로 진로를 정하기 어려워하는 학우분들이 있는 것 같아, IT 업계의 큰 그림을 그리는 데 도움을 주고자 글을 쓰게 되었습니다.
물론, 어떤 분야든 정점에 도달하면 부와 명예는 따라오기 마련입니다.
하지만, 왜 그 사람 혼자만이 그곳에 남을 수 있었을까를 생각하면 매우 고된 길이라는 것을 깨달을 수 있을 것입니다.
저는 한 가지 생존전략으로 IT 업계의 취업시장이 어떻게 변할지 예측하고 변화에 선제대응하는 전략을 제시하고 싶습니다.
그리고 저는 이 방법이 노력 대비 가장 성과가 좋은 방법이라 생각합니다.
그렇기에, 먼저 학부 4학년 수준에서 IT 업계가 앞으로 어떻게 변할지를 풀어보려 합니다.
대학생 수준의 개인적인 생각이니 맹신하지는 말고 참고만 해서 스스로만의 기준을 만들고 미래를 그려보았으면 좋겠습니다.
그러면 이 글이 정보통신공학과 학우분들의 진로 설정에 참고가 되길 바라며 글을 계속 잇겠습니다.
기술은 목적이 아닌 수단이다.
요즘 하루가 멀다 하고 신기술이 쏟아져 나오고 있습니다.
AI는 나날이 발전하고, 논문마다 독창적인 아이디어를 통해 기술적 완성도는 점점 높아지고 있습니다.
여기서 가장 먼저 드리고 싶은 말은 기술 그 자체는 목적이 될 수 없다는 것입니다.
프로그래밍적 기교에 매혹되지 않게 주의해야 합니다.
아마도 여러분들은 어떤 기술을 사용했는가에 초점을 맞춰서 대중에 어필하는 스타트업을 본 적 있을 것입니다.
그들은 대부분 블록체인이나 메타버스와 관련하여 신기술로 세상을 바꾸겠다 했을 것입니다.
저도 한때 그런 오류를 범했습니다.
해커톤이나 공모전에서 어떤 기술을 통해 세상을 흐름을 바꿔보겠다 따위의 기획을 내놓은 적 있습니다.
여러분도 비슷한 경험을 한 적 있을 것입니다.
모두 신기술에 현혹된 것입니다.
하지만, 기술을 통해 세상을 바꾸는 주체는 사람입니다.
기술은 그 과정에 사용되는 도구일 뿐입니다.
가장 위험한 것은 스타트업 대표가 저런 소리를 하는 것 입니다.
그들 무조건 두 부류 중 하나일 겁니다.
사기꾼이거나, 목적을 잃고 기술에 도취되었거나
도구가 목적이 된다면 그 끝은 파멸로 정해져 있습니다.
여러분들도 블록체인과 메타버스 광풍 때 보셨을 겁니다.
세상을 바꾸겠다던 그 많은 스타트업들은 어떻게 되었나요?
기술은 목적이 아니라 수단입니다.
가장 먼저 무엇을 하고 싶은지 정하고, 그에 맞는 최적의 기술을 선택하세요.
얼리 어답터
여기까지만 하면 신기술을 배척하라는 말로 오해할까 봐 내용을 덧붙이겠습니다.
“새로운 라이브러리를 써봐라. 새로운 프로그래밍 언어를 배워봐라.”
이건 신기술 자체를 학습하라는 목적이 아닙니다.
단순히 기술 문서를 읽고 신기술 자체를 적용하는 것은 인공지능 프로그래머가 더 잘할 것입니다.
그보다 더 중요한 것은 기술 안에 담긴 철학을 이해하라는 것입니다.
우리는 신기술 속에서 철학을 얻는 법을 배워야 합니다.
업계의 주목을 받은 대부분의 신기술에는 이면에 핵심적인 철학이 그려져 있습니다.
사람들 대부분은 새로운 기술이 나왔다는 것 자체에 주목하지만, 그보다 더 중요한 것은 기술 속의 철학이 문제해결에 어떻게 작용했는지입니다.
메모리 관리로 예시를 보여드리겠습니다.
일반적으로 메모리 관리를 얘기하면 C나 C++ 같이 개발자가 직접 관리하는 방식과 Java나 C# 같이 가비지 콜렉터가 관리하는 방식을 떠올 겁니다.
두 방식 모두 업계에서 사용하는 방식이지만 문제가 있습니다.
개발자가 직접 관리하는 방식은 코딩 실수에 너무 취약합니다.
가비지 콜렉터가 관리하는 방식은 순환 참조 등의 알고리즘적 문제가 해결되지 않았고, 직접 관리하는 방식에 비해 성능적인 이슈가 있습니다.
Rust(새로운 프로그래밍 언어)는 소유권(Ownership)이란 개념을 통해 개발자의 실수로 인한 오류도 방지하면서 성능 이슈도 해결했습니다.
Rust를 배워보라는 말은, let
을 통해 변수를 선언하고 fn
을 통해 함수를 선언한다 따위의 문법적인 내용을 외우라는 것이 아닙니다.
신기술의 나온 맥락을 이해하고 문제해결에 어떻게 접근했는지 직접 써보면서, 그 안의 철학을 자신의 것으로 만들라는 말입니다.
소프트웨어 업계의 발을 들인 사람들은 누구나 거대한 소프트웨어 개발을 이끄는 상상을 하곤 합니다.
그 거대한 소프트웨어의 큰 그림을 그리기 위해서는 자신만의 철학이 있어야 합니다.
철학 없는 설계는 기술에 매몰된 난해한 설계로 이어지기 마련입니다.
그렇다면 설계에 대한 철학은 어디서 얻을 수 있을까요?
도메인 주도 설계: 소프트웨어 설계에 대해 다룬 대표적인 책
기술 서적을 읽는 것도 좋지만, 가장 효율적인 방법은 남의 코드를 사용해 보며 체화하는 것이라 생각합니다.
쉽게 말해, 철학의 리버스엔지니어링입니다.
철학을 조각 모음해서 자신의 것으로 만드세요.
그렇게 쌓인 당신만의 철학은 언젠가 소프트웨어 설계 난제 해결의 중요한 실마리가 될 수 있을 것입니다.
소프트웨어의 본질은 비용 절감이다.
이 말은 매우 중요하다고 생각하니 머릿속에 꼭 넣었으면 합니다.
그리고 나의 판단이 옳은지 고민될 때마다 되새겨 보세요.
요새 인공지능의 눈부신 발전이 대중의 관심을 사로잡고 있습니다.
SF 창작물에서 인공지능이 미래를 지배한다는 설정은 자주 등장하기에, 때때론 인간을 뛰어넘는 프로그램을 만드는 상상을 하곤 합니다.
실제로 인공지능이 인간을 뛰어넘을 것이라는 가능성을 보고 IT업계로 진로를 정한 후배분을 본 적도 있습니다.
하지만, 저는 여러분이 좀 더 논리적으로 생각했으면 합니다.
만약 여러분이 인간을 뛰어넘는 초지성을 만드는 게 꿈이라면 하드웨어 진로를 알아보는 것이 더 맞을 것입니다.
소프트웨어와 하드웨어 모두 인공지능이라는 같은 키워드로 뭉쳤더라도 그 본질은 다릅니다.
소프트웨어의 본질은 비용 절감입니다.
이는 하드웨어와의 가장 큰 차이점이기도 합니다.
하드웨어, 즉 컴퓨터는 전쟁을 위한 도구로써 탄생했습니다.
컴퓨터는 남들과의 경쟁에서 이기기 위한 무기인 셈입니다.
본질이 무기라고 생각하면 왜 각국의 수장들이 반도체 기술 확보에 열을 올리는지 이해할 수 있을 것입니다.
바로 군비 경쟁입니다.
거함거포주의를 포커에 비유한 풍자화
지금의 AI 반도체 열풍은 20세기 거함거포주의를 연상케 합니다.
거함거포주의를 속된 말로 요약하면 “짱 센 대포와 짱 큰 배를 만들어서 딜탱이 모두 되는 완전체를 만들자”라는 논리입니다.
엄청난 사정거리와 파괴력에 매료된 각국의 해군은 너나 할 것 없이 거대한 전함을 건조하기 시작했습니다.
참고: 챗GPT가 쏘아올린 공… AI반도체 전쟁 본격화
다시 본론으로 돌아오겠습니다.
소프트웨어(프로그래밍)의 본질은 무엇일까요?
프로그램이란 개념은 하드웨어의 물리적인 수정 없이 적은 비용으로 하드웨어의 동작을 바꾸기 위해 제안된 것입니다.
프로그래밍 언어는 프로그램 작성에 드는 시간과 노력(=비용)을 줄이기 위해 제안된 개념입니다.
즉, 소프트웨어의 본질은 비용 절감입니다.
돈을 버는 소프트웨어는 결코 인간을 뛰어넘는 결과물을 만들고자 하지 않습니다.
소프트웨어는 목적은 언제나 하급 인력을 대체하여 인건비를 줄이는 것이었습니다.
본질은 훌륭한 판단의 근거입니다.
딥마인드로 예를 들어 보겠습니다.
딥마인드는 인공지능을 연구하는 구글(=알파벳)의 자회사입니다.
2016년 바둑으로 인간을 이긴 알파고가 딥마인드의 대표적인 성과입니다.
알파고는 유명하니 여러분들 대부분이 알고 있을겁니다.
하지만, 대부분 인공지능이 인간을 이겼다는 사실만 기억할 뿐, 이 회사가 진짜 돈을 벌었는지는 알지 못할 것입니다.
놀랍게도, 딥마인드는 연구소 설립 이후 10년간 매년 손실만 기록한 적자 기업입니다.
그들은 2020년 처음으로 흑자 전환에 성공했습니다.
구글이라는 든든한 후원자가 있었고 바둑으로 인간을 이기며 세간을 뒤흔들어 놓았음에도, 실질적으로 돈을 버는 데까지는 알파고 이후로도 5년이 걸렸습니다.
아마 일반적인 회사라면 버티지 못하고 파산했을 것입니다.
Electron 역시 한 가지 예입니다.
현재 IT 업계의 트랜드는 더 많은 리소스를 소비하더라도 개발효율을 올리자입니다.
Slack과 Spotify는 과거에는 Qt로 작성되었지만, 유지보수 비용의 압박으로 인해 Electron으로 교체했습니다.
일렉트론은 크로미움, 노드JS, V8으로 구성되어 있습니다.
Electron이 더 느리고 많은 메모리를 사용하지만 그만큼 유지보수 비용을 절약할 수 있고, 어차피 하드웨어 성능은 계속 향상됩니다.
여러분이 소프트웨어로 돈을 벌고자 한다면, 언제나 본질을 생각해 보세요.
여기까지 읽으셨다면, 여러분도 아래 질문에 대답할 수 있을 것입니다.
누군가 인간을 완전히 대체할 인공지능 프로그램을 만들자며 당신에게 꿈팔이를 한다면 그 사람의 정체는 뭘까요?
같은 말을 3번이나 썼으면 굳이 말하지 않아도 알 것이라 믿습니다.
참고: ‘알파고’ 만든 딥마인드, 10년 만에 흑자 전환
IT 회사란 단어는 사라질 것이다.
은행은 인터넷으로 전자상거래를 처리하고, 무역회사는 인터넷을 이용해 세계 각국의 바이어와 화상회의를 합니다.
하지만, 우리는 이들을 인터넷 회사라 부르지 않습니다.
인터넷이 보편적 기술이 되었기 때문입니다.
미래에 인공지능이 코딩을 해주면서 프로그래밍이 보편적 기술이 된다면 어떻게 바뀔까요?
네이버는 이커머스&엔터테인먼트,
카카오는 핀테크&엔터테인먼트 회사로 불릴 것입니다.
IT 회사의 전환은 현재진행형입니다.
2022년 매출 기준, 네이버가 초록색 검색창으로 버는 돈은 전체 매출에서 48%밖에 차지하지 않습니다.
나머지 52%는 이커머스(네이버쇼핑), 핀테크(네이버페이), 콘텐츠(네이버웹툰) 등에서 발생합니다.
카카오도 마찬가지입니다.
카카오가 앱(플랫폼)으로 버는 돈은 전체 매출의 53%입니다.
나머지 47%는 멜론, 카카오 웹툰, 카카오 TV 등에서 발생합니다.
참고: 2022년 네이버 사업보고서
참고: 2022년 카카오 사업보고서
앞으로 중요해질 것은 어떤 IT 기술을 사용하는지가 아닌, 어떤 데이터, 어떤 도메인을 다루는지입니다.
특히, 단순히 라이브러리를 사용할 줄 아는 것은 이제 특별한 스펙으로 보기 어려워 질 것입니다.
우리는 종종 복잡한 코드를 작성하기 싫어서 라이브러리를 사용하곤 합니다.
하지만 인공지능이 필요한 함수를 대신 작성해 준다면, 쓰지도 않는 함수 수백 개가 포함된 거대한 라이브러리를 써야 하는 이유가 무엇인가요?
4년제 학부 졸업을 선택한 이상 희망 진로가 코드몽키는 아니라 생각합니다.
그렇기에 조언하자면, 프로그래밍이 범용적인 기술이 된다면 프로그래밍 자체만으로는 돈을 벌 수 없다고 생각합니다.
영어를 생각하면 쉽습니다.
토익 900점만 가지고 안정적인 직장을 구할 수 있을까요?
토익 900점은 매우 뛰어난 영어 실력이지만 그것만으로 안정적인 직장을 구할 것이라곤 확신할 수 없습니다.
승무원이든 무역회사든 지원자 자체가 오지 않는 작은 회사가 아니라면 영어는 필수고 당신을 뽑아야 할 추가적인 이유가 있어야 합니다.
예컨대, 외모, 자격증, 언변 같은 것 말입니다.
현재, 영어는 구글 번역기가 대체할 수 있지만, 외모, 자격증, 언변은 아직도 기계가 대체할 수 없습니다.
경영자의 입장에서 어떤 사람이 실질적으로 회사에 돈을 벌어다 줄지 생각해 보세요.
당연한 말이지만, 무역회사에 돈을 벌어올 사람은 영어를 잘하는 사람이 아니라, 영어를 조금 못하더라도 트레이딩에 대한 안목과 거래를 이끌어낼 수 있는 언변을 가진 사람입니다.
비슷한 논리로, 프로그래밍으로 돈을 벌려면 남들이 모르고 기계로 대체할 수 없는 것을 가지고 있어야 합니다.
도메인 지식은 당신을 뽑아야 할 추가적인 이유로 제시할 수 있는 뛰어난 옵션입니다.
앞으로 IT 회사는 뛰어난 프로그래밍 능력보다는 도메인 지식을 가지고 있는 것을 긍정적으로 볼 것입니다.
취직을 원한다면, 희망 업종을 찍고 도메인 지식을 쌓는 전략을 고려해 보세요.
남들이 따라오지 못하는 비교우위를 보여줄 것입니다.
도메인 지식을 위한 복수/부/연계 전공도 매력적인 선택지로 생각됩니다.
구글에 검색해서 알고리즘 코드를 긁어오는 건 인공지능이 더 잘합니다.
하지만, 도메인 지식을 바탕으로 알고리즘을 최적화하는 것은 사람만이 할 수 있을 것입니다.
앞으로의 10년
과거 5년은 인력 공급의 부족과 저금리로 인한 창업 지원으로 IT 업계의 임금 상승이 가팔랐습니다.
공급에 비해 수요가 많았기 때문입니다.
하지만, 앞으로의 10년도 가파른 임금 상승이 유지될까요?
기업은 자선 단체가 아닙니다.
기업은 이익을 위해 움직입니다.
저는 그동안 IT 인력을 필요로 하는 대기업에서 SW 교육을 지원한 목적은, SW 인력 공급 인프라를 통해 인건비를 내리려는 계획의 일환이라 생각합니다.
그리고 당연하게도, 기업은 지금까지 투자한 돈보다 훨씬 더 많은 인건비를 절약하려 할 것입니다.
이것은 음모론이 아니라 당연한 경제 논리입니다.
경영자의 입장에서 미래를 그려보세요.
그리고 어떤 분야가 살아남을지 고민해 보세요.
아마존의 창업자이자 초대 CEO 제프 베조스는 아래와 같은 인터뷰를 남겼습니다.
저는 종종 매우 흥미로운 질문을 받습니다.
“제프, 다음 10년 동안에 어떤 것이 변할까요?”
하지만 그보다 더 중요한 이 질문은 거의 받아본 적이 없습니다.
“다음 10년 동안 변하지 않는 것은 무엇일까요?” 대단히 중요한 질문입니다.
그것들을 중심으로 계획을 세울 수 있으니까요.
대학교 4학년의 식견으로, 앞으로 살아남을 IT 분야는 회로설계, 데이터 처리/분석, 임베디드, 보안 4분야밖에 보이지 않습니다.
“소프트웨어는 하드웨어의 추상화다” 이 사실은 앞으로도 변하지 않을 것입니다.
이를 토대로, 프로그래밍이란 길을 계속 따라가다 보면 하드웨어와 추상화라는 두 갈림길이 나올 것입니다.
여기서 하드웨어는 회로설계, 추상화는 데이터 처리/분석(알고리즘, 빅데이터)를 가리킵니다.
하드웨어와 추상화, 두 가지를 합친 것은 임베디드로 볼 수 있고,
어떤 선택지도 택하지 않고 길을 되돌아가는 것은 보안이라 볼 수 있습니다.
현재의 웹 프론트엔드, 백엔드와 같이 나눠놓은 분야는 앞으로 돈 벌기가 점점 어려워질 것이라 생각합니다.
아울러, 지난 지도교수 면담 때 유상조 교수님께서 해주신 말을 여러분께도 전달하고 싶습니다.
인생을 길게 봐라.
대학원에 투자한 시간의 가치는 미래를 어떻게 그리냐에 따라 달라질 수 있다.
저는 이 말을 듣고 제가 너무 근시안적이라는 것을 깨달았습니다.
저는 너무 늦게 했지만, 여러분들은 좀 더 빨리 장기적인 밥그릇을 찾아 진학, 취업, 창업 등 인생의 큰 그림을 그려보세요.
아, 큰 그림을 그릴 때 한 가지 주의해야 할 점을 말하고 싶습니다.
지금 가장 유망하다고 떠들어대는 분야는 경계하세요.
생성형 AI, 자율주행, AI 반도체 같은 것들이 있죠?
이게 여러분들이 직업을 구할 때도 유효할지 생각해 보세요.
블록체인과 메타버스 광풍 때 보지 않았나요?
대중의 관심을 한 몸에 받은 기술은 언제나 버블을 만듭니다.
영국의 철학자 칼 포퍼는 인간은 세상을 완전히 이해할 수 없으며 부분적으로만 이해할 수 있기에 필연적으로 세상을 왜곡하여 보게 된다고 주장했습니다.
그는 이것을 인간 인식의 오류성이라 불렀습니다.
대중의 관심이 만든 추세는 착각(오류성)을 만들고, 추세와 착각이 부정적 피드백으로 검증받으며 결국 버블을 형성합니다.
그리고 버블의 붕괴는 항상 정해진 결말입니다.
인류 역사상 항상 그래왔고 앞으로도 그럴 것입니다.
만약 본인이 1학년 현역 남자고 대학원 진학에 관심이 있다면 아마 상관없을 수 있습니다.
학사 4년+군대 2년+석사 2년, 즉, 취직까지 최소 8년이 남았고, 8년이면 버블로 튀겨졌다가 붕괴 후 정상화되기까지 충분한 시간일 겁니다.
하지만, 그렇지 않다면 지금 가장 핫한 기술은 경계해야 합니다.
제가 앞서 AI 반도체 열풍이 20세기 거함거포주의를 연상케 한다고 말했습니다.
지상 최대의 전함 야마토의 침몰, 거함거포주의를 완전하게 끝장내버린 상징적인 사건으로 평가받는다.
거함거포주의의 말로를 알고 계시나요?
해전에서의 항공기 운용(항공모함+함재기), 즉 항모기동전술이 등장하자 거함거포주의는 쇠퇴하여 사라졌습니다.
막대한 예산을 들여서 만든 거대한 전함은 전부 침몰되거나 효율성의 문제로 결국 고철로 팔려나갔습니다.
참고: 나무위키 - 거함거포주의
저는 AI 반도체 역시 같은 길을 걸을 것이라 생각합니다.
엔비디아의 H100 같은 고성능 GPU는 많은 전력을 소비합니다.
하지만, 현재 대중은 고성능 GPU가 어떤 미래를 만들 수 있는지만 집중할 뿐, 그 전력을 어떻게 감당할 것인가는 외면하고 있습니다.
고성능 GPU에서 동작하는 뛰어난 자율주행 AI를 만들었다고 가정합시다.
자율주행 AI를 실제 자동차에 넣을 수 있을까요?
불가능합니다.
소비 전력이 늘어나면 자동차의 주행가능거리는 줄어들기 때문입니다.
자율주행 AI를 데이터센터에 넣고 자동차와 통신시키면요?
100km/h 이상으로 달리면 자율주행이 꺼지는 자율주행차, 말이 되나요?
(이동속도가 모바일 통신 품질에 영향을 주는 것은 정보통신공학입문 과목에서 배웠을 겁니다)
결국 자율주행차가 완성되려면 AI뿐만 아니라 통신, 배터리 기술의 발전과 비용 절감이 동반되어야 합니다.
오히려 저는 임베디드 기기 안에 인공지능을 넣는 Edge AI와 AI 경량화 기술의 전망이 더 나아보입니다.
대중을 실망시킨 신기술은 곧 대중의 외면을 받습니다.
외면을 받는다는 말은 투자가 철회되며 자본이 빠져나간다는 소리고, 구직자들에게는 구조조정과 취업난으로 다가올 것입니다.
그렇기 때문에, 지금 가장 핫한 기술은 경계해야 합니다.
만약 본인이 미래를 볼 안목이 없다면, 어느 직종이 사람을 가장 많이 뽑는다더라 같은 말에 현혹되지 말고 내가 가장 하고 싶은 것을 찾으면 됩니다.
정보통신공학과의 장점이 뭔가요?
소프트웨어, 하드웨어, 통신을 종류별로 찍먹할 수 있는 게 장점이라 생각합니다.
저도 효율적인 것을 좋아하지만, 설계과목으로 컴퓨터그래픽스설계(소프트웨어), 임베디드시스템설계(하드웨어), 디지털통신설계(통신) 종류별로 찍어 먹어 보았습니다.
후회보단 낭비가 낫습니다.
여러분들도 정보통신공학과만이 할 수 있는 낭만을 누렸으면 좋겠습니다.
3줄 요약
- 기술에 현혹되지 마라.
- 프로그래밍적 기교보다는 도메인 지식이 중요하다.
- 길게 보고 큰 그림을 그려라.