2016년, 알파고가 바둑 챔피언을 이기면서 AI 기술이 대중의 주목을 받기 시작했습니다. 2020년대 초반에는 GPT-3 같은 대규모 언어 모델이 등장했고, 텍스트 생성과 자연어 처리에서 혁신적인 성과를 이루며 AI 기술 상용화가 가속화됐습니다. 그리고 2022년, 챗GPT가 출시되면서 일상적인 대화와 상담을 넘어 창의적인 콘텐츠 생성까지 가능한 AI의 모습이 구현되며 AI가 우리 삶을 어떻게 혁신적으로 변화시킬 수 있는지 실감하게 됐습니다.
AI 기술의 발전은 자율주행차, 의료 진단 시스템, 스마트 홈 등 일상생활의 다양한 분야에서 활용되고 있습니다. 이 과정에서 AI 기술을 다루는 직무의 채용도 많이 생겼는데, 특히 ‘AI 엔지니어’라는 직업이 최근 주목받고 있습니다. AI 엔지니어는 AI 기술을 구현하고 적용하는 과정에서 핵심적인 역할을 담당합니다. AI 모델 개발, 데이터 수집 및 전처리, 알고리즘 설계, 시스템 구축 및 운영 등의 업무를 수행하며, AI 기술이 실제 서비스와 제품에 적용될 수 있도록 만듭니다.
이처럼 AI 엔지니어는 AI 기술의 실용화를 이끄는 핵심적인 역할을 담당하며, 앞으로도 AI 산업의 발전과 함께 그 중요성이 더욱 부각될 것으로 예상됩니다. 그렇다면 AI 엔지니어는 어떤 일을 하는 걸까요? 이번 글에서는 AI 엔지니어의 역할과 직무 내용, 그리고 세부적인 직무 영역에 대해 살펴보도록 하겠습니다.

‘AI 엔지니어’란 무엇일까
AI 개발 관련 직무는 초점을 맞추는 분야에 따라 매우 다양하게 나뉩니다. AI 엔지니어 외에도 머신러닝 엔지니어(Machine Learning Engineer), 딥러닝 엔지니어(Deep Learning Engineer), AI 리서처(AI Researcher), AI 리서치 엔지니어(AI Research Engineer), AI 어플라이드 사이언티스트(AI Applied Scientist), 데이터 사이언티스트(Data Scientist), 컴퓨터 비전 엔지니어(Computer Vision Engineer), NLP 엔지니어(NLP Engineer) 등 다양한 세부 직무가 존재합니다. 어떤 사람들은 AI 엔지니어 직무와 나머지 직무들을 구분하기도 합니다. 하지만, 이 아티클에서는 AI 엔지니어를 더 광범위한 개념으로, 딥러닝 모델 개발에 직접적으로 관여하는 모든 엔지니어를 AI 엔지니어로 정의하겠습니다.

AI 엔지니어가 하는 일
기계가 인간의 학습과 추론 능력을 모방해 스스로 학습하고 문제를 해결할 수 있도록 하는 기술을 AI라고 부릅니다. 이 과정에는 AI 모델과 학습 데이터가 필요한데요. 예를 들어, 강아지와 고양이를 구별하는 AI 모델을 만들려면, 강아지와 고양이 사진 데이터와 이를 학습할 수 있는 딥러닝 모델이 필요한 것이죠.
이처럼 AI 개발에서 가장 중요한 것은 ‘데이터’와 ‘AI 모델’입니다. 데이터는 AI 모델이 학습하고 예측을 수행하는 데 필요한 기본 자료를 제공하며, AI 모델은 이 데이터를 기반으로 학습하고 문제를 해결하는 알고리즘이거든요. 따라서, AI 엔지니어의 주된 업무는 데이터와 AI 모델 개발에 관련된 일을 하는 것입니다. 구체적으로 말하자면, AI 엔지니어는 데이터를 수집, 전처리, 분석하고, 이를 토대로 AI 모델을 설계, 구현, 학습, 평가하는 등의 작업을 수행합니다. 또한, AI 모델의 성능을 지속적으로 모니터링하고 개선하는 역할도 담당합니다. 자, 그럼 이제부터 AI 엔지니어의 주요 역할과 필요한 역량을 6단계로 나누어 살펴보겠습니다.
1단계. 문제를 정의하고, 요구 사항 분석하기
AI 엔지니어는 프로젝트 시작 단계에서 실제 문제를 정의하고, 요구 사항을 분석합니다. 머신러닝 서적을 보면, 머신러닝으로 문제를 해결하기 전에 ‘이 문제가 머신러닝으로 풀어갈 수 있는 문제인가’를 먼저 판별하고, 가능하다면 ‘머신러닝으로 문제를 해결할 수 있게 문제를 재정의’하라고 말합니다. 그런데 이게 무슨 말일까요?
AI 엔지니어에게 주어지는 업무가 항상 구체적이지는 않습니다. “강아지와 고양이를 분류하는 모델을 만들어 주세요.”처럼 해결해야 할 문제가 이미 머신러닝 문제인 상태로 주어지는 것이 아니라는 뜻입니다. 문제 정의는 “서비스 운영 과정에서 운영 리소스가 많이 드는데, 이를 줄일 수 있는 방법을 찾아주세요.” “유저가 서비스 내에서 원하는 이미지를 편하게 찾기 위한 방법이 필요합니다.”와 같이 비즈니스 관점에서의 문제로부터 시작하니까요.
그렇기에 AI 엔지니어의 업무는 비즈니스 관점에서의 문제를 머신러닝 관점의 문제로 재정의하는 것부터 시작합니다. 이를 위해선 다양한 AI 기술과 실제 유즈 케이스들에 대해 파악하는 것이 중요하고요. 만일 중고 거래 서비스에서 “중고 거래되는 물품 데이터를 쌓아 분석해 보고 싶어요."라는 요청이 들어온다면, AI 엔지니어는 “유저가 올린 중고 물품 이미지에 태그를 달아주는 이미지 분류 모델을 개발해서 거래되는 물품 데이터를 분석할 수 있을 것 같아요."라는 의견을 전달해야 하는 것이죠.
<AI 엔지니어에게 필요한 역량>
✔️다양한 AI 기술 및 유즈 케이스 파악을 위한 AI 기술 역량
✔️해당 비즈니스에 대한 이해
✔️복잡한 문제를 이해하고 분석하는 문제 해결 능력
✔️기획자와 협력하여 요구 사항을 명확히 이해하고 전달할 수 있는 커뮤니케이션 능력
2단계. AI 기술 리서치하기
문제 정의와 요구 사항 분석이 끝났다면, 이제 문제 해결에 필요한 AI 기술을 리서치해야 합니다. AI 기술 리서치는 해결해야 할 문제를 효율적으로 해결할 수 있는 AI 기술을 찾기 위해 논문을 읽고, 유스 케이스(Use case)를 찾는 과정을 말합니다. 그렇기에 AI 엔지니어는 기본적으로 AI 관련 논문을 이해하고, 실제 문제에 적용할 수 있어야 합니다. 이 과정에서 다양한 딥러닝 모델들 중 문제 해결에 적절해 보이는 딥러닝 모델을 선택하고, 필요한 부가적인 기술을 조사하며 다양한 실험도 진행합니다.
<AI 기술 리서치에 필요한 역량>
✔️AI 기술에 대한 이해
✔️머신러닝, 통계학, 선형 대수 등의 기초 학문에 기반한 논문 이해 능력
✔️Python과 같은 프로그래밍 언어를 사용하여 모델을 구현하고 테스트할 수 있는 프로그래밍 능력
3단계. 데이터 수집 및 전처리
AI 기술 리서치를 했다면, 이제 AI 모델을 개발하기 위해 필요한 데이터를 수집하고 전처리해야 합니다. 기술 리서치 단계에서 필요한 데이터의 형태나 양을 선정했으니 이에 부합하는 데이터 셋을 구축할 차례죠. 여기서 데이터는 AI 모델이 학습하고 예측하는 데 중요한 역할을 하며, 대체로 데이터 품질이 모델 성능의 가장 중요한 부분을 차지하기 때문에 굉장히 중요한 단계입니다. 때론 기업의 환경이나 해결할 문제에 따라 이미 데이터가 준비된 경우도 있지만, 이런 경우에도 사용할 데이터를 검증하고 정제하는 과정은 필요한 경우가 많습니다.
🤔 사실 3단계(데이터 수집 및 전처리)는 아래에서 설명할 4단계(모델 학습 및 평가)와 병렬적으로 진행되는데요. 그 이유는 데이터가 전부 수집되거나 레이블링 될 때까지 기다리는 것이 아니라, 중간중간 수집된 일부 데이터로 모델을 학습 및 평가해야 하기 때문입니다.
<필요한 역량>
✔️다양한 데이터 소스에서 데이터를 추출하고 처리할 수 있는 데이터 분석 및 처리 능력
✔️결측치 처리, 이상치 제거, 데이터 변환 등의 데이터 전처리에 필요한 데이터 정제 능력
✔️대용량 데이터를 효율적으로 관리하고 저장하는 데이터 관리 능력
4단계. 모델 학습 및 평가
학습 데이터를 구축한 후에는 AI 모델을 학습시키고 다양한 상황에서 정량적/정성적으로 평가하는 과정을 거칩니다. 이 과정에서 초기 결과를 바탕으로 추가적인 학습 데이터가 필요한지 판단해야 하죠. 정량적 평가뿐만 아니라 다양한 시나리오를 통해 모델 성능이 어떤 경우에 떨어지는지 분석해야 합니다.
<필요한 역량>
✔️다양한 알고리즘과 모델을 이해하고 적용할 수 있는 머신러닝 및 딥러닝 이해
✔️Python과 같은 프로그래밍 언어를 사용하여 모델을 구현하고 테스트할 수 있는 프로그래밍 능력
✔️파이토치(Pytorch), 텐서플로(Tensorflow) 등 딥러닝 프레임 워크 사용 역량
✔️모델의 성능을 평가하고, 필요한 경우 하이퍼파라미터를 조정해 최적화하는 모델 평가 및 최적화
5단계. 모델 고도화
모델을 학습하고 평가하는 동시에 프로젝트에서 요구하는 성능까지 모델을 고도화하는 과정도 필요합니다. 이 과정에서는 양질의 학습 데이터 추가 수집, 도메인과 문제에 맞는 적절한 학습 방법 시도, 모델의 구조를 수정하는 방법 등을 고려합니다. 또한, 전후 처리 기능을 개발하여 AI 모델의 예측을 보완하는 경우도 있는데요. 모델 학습보다 전후 처리 기능 개발에 더 많은 시간이 소요되는 경우도 많습니다.
컴퓨터 비전이나 자연어 처리 같은 분야에서는 딥러닝뿐만 아니라 머신러닝 방법이나 전통적인 알고리즘이 다양하게 사용됩니다. 이들은 단독적으로 사용되기보다 전후 처리 과정에서 자주 활용되므로, 그간의 경험이 중요하게 작용합니다.
AI 모델의 학습이 어느 정도 완료되면 인퍼런스 최적화 단계를 진행합니다. 모델이 경량화되어 더 빠르게 작동할수록 비용 측면에서 효율적이기 때문입니다. 대다수 AI 모델은 GPU 서버를 사용하므로 인퍼런스 속도를 개선하는 것은 매우 중요합니다. 특히 엣지 디바이스 등에 AI 모델을 탑재할 때는 모델 경량화가 필수적인 이슈가 될 수 있으니 참고하세요.
<필요한 역량>
✔️도메인 지식 및 문제 해결 능력 : 컴퓨터 비전(Computer vision), 자연어 처리(Natural Language Processing), 로봇 공학(robotics) 등
✔️딥러닝 프레임 워크 사용 역량 : 파이토치(Pytorch), 텐서플로(Tensorflow) 등
✔️딥러닝 모델 경량화 및 인퍼런스 기술 역량
6단계. 모델 배포 및 유지 보수
마지막으로 개발한 AI 모델을 배포해 실제 환경에서 운영하고 유지 보수하는 과정이 필요합니다. 발생할 수 있는 문제를 해결하고, 모델의 성능을 지속적으로 모니터링하여 개선해 나갑니다.
<필요한 역량>
✔️AI 모델을 실제 시스템에 통합하고 배포할 수 있는 시스템 통합 능력
✔️모델 운영 중 발생하는 다양한 문제를 신속하게 분석하고 해결할 수 있는 문제 해결 능력
✔️AI 기술의 빠른 발전에 맞춰 지속적으로 학습하고 모델을 개선할 수 있는 지속적인 학습과 개선 능력
지금까지 AI 엔지니어가 일반적으로 수행하는 업무를 6단계로 나누어 살펴봤습니다. 단계별 역할을 효과적으로 수행하기 위해서는 기술적 지식뿐만 아니라 문제 해결 능력과 커뮤니케이션 능력도 중요합니다. 물론, 위에서 설명한 여러 과정 중 일부 과정만을 전문적으로 수행하거나 도메인에 특화된 업무를 수행하는 경우도 있죠. 어떤 경우가 이에 해당하는지 궁금하시다면, 앞으로의 내용에 주목해 주세요.

📌 AI 엔지니어 세부 직무 정리
AI 엔지니어링 분야에는 다양한 직업이 있습니다. 물론, AI 엔지니어라는 포괄적인 용어로 모든 직업을 묶을 수는 있지만, 각 직업은 특정한 역할과 책임을 가지고 있기 때문에 세부 직무별 구체적인 역할을 이해하는 것도 필요합니다. 그러나 직무 명칭 그 자체가 실제 업무 범위를 결정하는 건 아닙니다. 같은 직무라 하더라도 기업과 산업, 그리고 소속한 팀의 환경에 따라 다양한 업무를 동시에 수행할 수도 있고, 일부 업무만을 전문적으로 수행할 수도 있다는 점을 염두에 두세요.
1. AI 엔지니어 (AI Engineer)
✔️핵심 업무 : 다양한 도메인과 응용 프로그램에서 AI 시스템을 개발하고 배포
✔️주요 업무 : 머신러닝 및 딥러닝 프로젝트, 데이터 전처리, 모델 학습 및 배포
✔️필요 기술 : 알고리즘, 프로그래밍(Python, R), 머신러닝 프레임워크(TensorFlow, PyTorch) 사용 능력
2. 머신러닝 엔지니어 (Machine Learning(ML) Engineer)
✔️핵심 업무 : 예측 분석, 추천 시스템, 분류 작업과 같은 특정 응용 프로그램을 위한 머신러닝 모델 개발 및 최적화
✔️필요 기술 : 통계 모델링, 지도 학습/비지도 학습, 사이킷런(scikit-learn) 같은 머신러닝 라이브러리 사용 능력
✔️사용 도구 : 머신러닝에 특화된 도구와 기술 (ex. AutoML 및 클라우드 기반 머신러닝 서비스)
3. AI 리서처 (AI Researcher)
💻 연구 중심
✔️핵심 업무 : AI 분야의 발전을 위한 원천 연구 수행. 종종 학술지와 학회에 연구 결과 발표
✔️필요 기술 : AI/ML 이론에 대한 깊은 지식. 강력한 수학 및 알고리즘 배경
✔️작업 결과 : 새로운 알고리즘 개발, 이론적 발전 및 최첨단 AI 기술
✔️사용 도구 : 연구 도구 사용. 즉각적인 응용 프로그램 배포보다는 이론적 연구에 중점
4. AI 리서치 엔지니어 (AI Research Engineer)
💻 하이브리드 역할
✔️핵심 업무 : 이론 연구와 실용적 응용 사이의 격차를 해소. 연구원이 개발한 새로운 알고리즘을 구현하고 테스트
✔️필요 기술 : 강력한 프로그래밍 및 알고리즘 개발 기술, 연구 및 응용 AI 방법론 숙지
✔️사용 도구 : 연구 도구 활용 및 소프트웨어 공학 실습에 중점을 두어 프로토타입과 개념 증명을 개발
5. AI 어플라이드 사이언티스트 (AI Applied Scientist)
💻 응용 중심
✔️핵심 업무 : 금융, 헬스케어, 전자상거래 같은 다양한 산업의 실제 문제를 해결하기 위한 AI 기술 적용
✔️필요 기술 : 연구 능력과 실질적 구현 능력의 조합
✔️작업 결과 : 특정 산업 요구에 맞춘 AI 시스템 개발 및 배포, 종종 학제 간 협업을 포함
6. 딥러닝 엔지니어 (Deep Learning Engineer)
✔️핵심 업무 : 이미지 인식, 자연어 처리 및 생성 모델과 같은 응용 프로그램을 위한 딥러닝 모델 개발 및 최적화
✔️필요 기술 : 파이토치(Pytorch), 텐서플로(Tensorflow) 같은 딥러닝 프레임워크에 대한 전문 지식, 신경망 아키텍처(CNN, RNN, GAN)에 대한 지식
✔️사용 도구 : GPU 컴퓨팅, 딥러닝 라이브러리 및 대규모 모델 학습을 위한 클라우드 플랫폼 사용
7. 컴퓨터 비전 엔지니어 (Computer Vision Engineer)
💻 영상 데이터 초점
✔️핵심 업무 : 이미지나 비디오 같은 시각적 데이터를 해석하고 이해하는 AI 시스템 개발
✔️필요 기술 : 컴퓨터 비전 기술, 이미지 처리 및 시각적 데이터에 대한 딥러닝 모델에 대한 숙련도
✔️사용 도구 : OpenCV 같은 특화된 라이브러리 및 CNN, 트랜스포머(Transformer) 같은 딥러닝 모델 사용
8. NLP 엔지니어 (NLP Engineer)
💻 언어 처리에 초점
✔️핵심 업무 : 텍스트 분류, 감정 분석 및 기계 번역과 같은 작업을 위한 자연어 처리 AI 시스템 개발
✔️필요 기술 : 언어학 배경, NLP 알고리즘 및 SpaCy, NLTK와 같은 프레임워크에 대한 강력한 이해, 언어 이해를 위한 딥러닝 모델
✔️사용 도구 : NLP 도구 및 플랫폼에 특화되어 있으며, 언어 특정 과제 및 모델 작업
9. 데이터 사이언티스트 (Data Scientist)
✔️데이터 분석 : 데이터를 분석하고, 인사이트를 도출해 비즈니스 문제 해결
✔️주요 업무 : 데이터 수집, 처리, 분석, 모델링, 데이터 시각화
✔️필요 기술 : 통계 분석, 프로그래밍(R, Python), 머신러닝, 데이터 시각화 도구 활용(Tableau, Power BI)
✔️응용 분야 : 마케팅 분석, 고객 분석, 운영 효율성 개선
AI 개발과 관련된 9가지 직무 소개가 끝났습니다. 보편적으로 AI 엔지니어로 통칭되지만, 연구 중심인 경우 ‘AI 리서처’, 응용 연구 개발을 주로 하는 경우 ‘AI 리서치 엔지니어’ 또는 ‘AI 어플라이드 사이언티스트’, 예측/추천/시계열 모델링을 주로 다루는 경우 ‘머신러닝 엔지니어’, 특정 데이터에 집중하는 경우 ‘컴퓨터 비전 엔지니어’ 혹은 ‘NLP 엔지니어’로 구분할 수 있습니다. 저의 경우 연구 결과를 실제 도메인 문제에 적용하고 해결하는 역할을 맡고 있기에 AI 리서치 엔지니어 또는 AI 어플라이드 사이언티스트로 분류될 수 있으며, 영상 데이터를 주로 다루기 때문에 컴퓨터 비전 엔지니어로도 볼 수 있겠죠?
그러나 채용 공고에는 이러한 용어들이 혼용된 경우가 많습니다. 예를 들어, 컴퓨터 비전 엔지니어 대신 ‘AI 엔지니어-Vision’ 또는 ‘데이터 사이언티스트-Vision’ 등으로 표기한다거나 LLM 모델 개발자를 ‘머신러닝 엔지니어-LLM 개발’로 명시하기도 하며, 연구와 논문과는 거리가 있지만 ‘AI 리서처’로 표기하는 경우도 있거든요. 그렇기에 직무 ‘명칭' 자체에 초점을 맞추기보다는 본인이 강점이라 생각하는 역량에 초점을 맞추어 지원해 보세요. 본인의 강점을 바탕으로 전문성을 키워 나가는 것이 AI 엔지니어로 성장할 때 도움이 될 테니까요.
자, 지금까지 AI 엔지니어라는 직무를 여러 방면에서 살펴봤습니다. 만일 여러분이 AI 엔지니어를 꿈꾸거나 관련 분야로 이직을 고려하고 있다면, 이 아티클이 방향성을 그리는 데 조금이라도 도움이 되었길 바랍니다. 다음에는 더 알찬 내용으로 찾아뵙겠습니다. 감사합니다.

글ㅣ뭅즤IT 플랫폼 기업에서 AI / Computer Vision Engineer로 일하고 있는 뭅즤입니다. 글쓰기와 이야기를 좋아합니다.👉 <AI 개발자가 되고 싶다면> 시리즈 보러 가기 발행일 2024.07.15