핵심 정보
소프트웨어 엔지니어는 은행, 병원, 공장, 휴대폰, 우주선을 움직이는 프로그램을 설계하고 만들고 테스트하고 유지보수한다. 새 기능을 작성하고, 고장 난 부분을 고치고, 이후 수백 명의 다른 엔지니어가 안전하게 수정할 수 있도록 시스템 구조를 결정하는 일을 아우른다. 어떤 엔지니어는 모바일 앱을 처음부터 끝까지 혼자 만들지만, 어떤 엔지니어는 항공사 소프트웨어의 좌석 배정 기능처럼 훨씬 큰 시스템의 한 조각을 평생 다루기도 한다.
이 직함은 하는 일보다 훨씬 젊다. 사람들은 1968년보다 수십 년 전부터 프로그램을 작성해 왔지만, 그해 열린 NATO 회의에서 참석자들이 코드도 다리나 항공기처럼 엄격한 규율이 필요하다는 주장을 펴려고 의도적으로 '엔지니어링'이라는 단어를 빌려 쓰기 전까지는 아무도 '소프트웨어 엔지니어'라는 이름으로 일하지 않았다. 그 논쟁은 지금도 끝나지 않았다. 구조공학 엔지니어와 달리 대다수 소프트웨어 엔지니어는 면허가 필요 없고, 이 분야가 기술인지 과학인지 아니면 둘 다인지에 대한 논쟁도 여전하다.
이 사이트에서 다루는 직업 중 소프트웨어 엔지니어링을 특이하게 만드는 두 가지가 있다. 공식적인 진입 장벽이 거의 없는데도 보수가 매우 높다는 점, 그리고 자신이 만든 도구가 매일 산출하던 결과물—상용구 코드, 초안 수준의 테스트, 반복적인 수정—의 상당 부분을 스스로 대체당하는 모습을 지켜보는 최초의 사무직 중 하나라는 점이다. 그 이후에 남는 것은 더 어렵고 더 중요한 부분이다.
직업 프로필
- AI 내성35
- 보수80
- 진입장벽55
- 자율성68
- 수요78
- 영향력90
AI에 얼마나 노출되어 있나?
높음
한 엔지니어가 한 주 동안 작성하는 코드의 상당 부분—상용구, 초안 테스트, 반복적인 번역—은 이미 언어 모델이 견줄 만한 속도로 만들어낼 수 있다. 자동화하기 여전히 어려운 부분은 무엇을 만들어야 할지 결정하는 것, 그럴듯해 보이는 변경이 은근히 잘못된 방식을 찾아내는 것, 그리고 그것이 프로덕션에서 실패했을 때 책임을 지는 것이다.
AI와 미래 →이 직업을 보는 일곱 가지 관점
자주 묻는 질문
소프트웨어 엔지니어는 하루 종일 실제로 무엇을 하는가?
소프트웨어 엔지니어가 되려면 컴퓨터공학 학위가 필요한가?
소프트웨어 엔지니어링은 AI로 인한 위험에 처해 있는가?
소프트웨어 엔지니어는 얼마나 버는가?
소프트웨어 엔지니어, 프로그래머, 개발자는 어떻게 다른가?
채용에 코딩 인터뷰가 정말 필요한가?
소프트웨어 엔지니어는 원격으로 일할 수 있는가?
소프트웨어 엔지니어는 학교 졸업 후에도 계속 새 도구를 배워야 하는가?
공학·기술 분야의 다른 직업
AI 연구원
기계 지능을 뒷받침하는 알고리즘을 설계하고 검증하는 직업으로, 이제는 자기 자신의 연구 과정 상당 부분을 자동화하려는 경쟁이 벌어지는 분야이기도 하다.
AI 내성 50 🛰️항공우주공학자
지상을 벗어나는 항공기, 로켓, 우주선을 설계하고 분석하고 인증하며, 추측의 여지가 없는 안전 여유를 다루는 직업이다.
AI 내성 74 🌉토목공학자
강과 바위와 중력을 다리, 도로, 맑은 물로 바꾸는 직업 — 임호테프 이래 문명을 떠받쳐온 조용한 하중지지의 업.
AI 내성 72 🔌반도체 엔지니어
컴퓨터, 휴대폰, 무기 등 거의 모든 전자기기 내부의 트랜지스터를 설계하고 제조하며, 지구상 극소수 공장만이 다룰 수 있는 초정밀 장비를 다룬다.
AI 내성 60 🦾로봇공학 엔지니어
물리적 세계를 감지하고 판단하고 행동하는 기계를 설계하는 사람으로, 진짜 난제는 지능이 아니라 언제나 세계 그 자체였다.
AI 내성 65