안녕하세요. 지거국 컴공에 재학중인 학부생 3학년입니다
원래는 자바 + 스프링으로 백엔드를 준비하고 있었는데 이번에 응용 머신러닝 연구실 학부연구생을 하게 되면서 진로를 고민하고 있습니다.
제가 관심 있는 건 모델을 연구하는 리서처보다는 ML 모델을 실제 시스템에 붙이고, 서빙하고, 파이프라인을 구축하는 엔지니어링쪽입니다. 특히 제조업, 스마트팩토리, IoT 같은 산업 분야에 관심이 있습니다.
근데 채용공고를 보면 ML Engineer, MLOps, AI Platform 같은 직무는 대부분 경력직이거나 석사 우대라서 학사로 준비하는 게 맞는지 계속 고민됩니다.
그래서 현재는 Spring은 유지하면서 Python, 머신러닝, Linux/Docker를 같이 공부하고 연구실 프로젝트도 해보려고 하는데, 오히려 이렇게 하면 백엔드도 아니고 ML도 아닌 애매한 사람이 되는 건 아닐까하는 걱정도 듭니다.
궁금한 점은
- 제조업/스마트팩토리/IoT 쪽 응용 ML 엔지니어는 학사 신입도 현실적으로 취업이 가능한 편인가요?
- 학사 기준이면 프로젝트를 어느 정도까지 해봐야 경쟁력이 있을까요? (모델 학습 + API 서빙 + Docker 정도면 되는지, Kubernetes나 MLflow까지 하는 게 일반적인지)
- 스프링은 백엔드 취업 준비하듯이 준비해야하나요? 아니면 단순 api서빙 수준까지만 알아두면 될까요..
- 백엔드를 유지하면서 ML 시스템 프로젝트를 준비하는 방향이 실제로 경쟁력이 있는 프로필인지, 아니면 차라리 한 분야를 깊게 파는 게 더 나은지 궁금합니다.
실제 현업이나 대학원 계신 분들 조언 부탁드립니다. 감사합니다!!
ml 엔지니어쪽은 연구나 ai 깊게 이해하는 쪽보다는 너가 말한대로 운용하는 쪽이라 엔지니어링 쪽인데 일단 언어 프레임워크 쪽으로 가면 자바 스프링 프레임워크 쪽은 도구 쪽에 가깝다 보면 됨. 그게 뭐 어디든 먹히고 그런건 아니고 그냥 운용하는 그러니까 돌아가는 시스템에서 적합한 언어 그리고 관리하고 유지보수하는 형태에 적합한 걸 골라서 돌리는거지.
완벽한 언어 프레임워크 이런건 없고 현업에선 돌아가는 환경에 적합한 그러니까 임베디드 쪽은 c로 펌웨어나 구동 드라이버 단에서 돌아가니까 c++로 호환성을 택하거나 어플리케이션 단에선. 다른 언어에서도 가능한데 호환성 자체는 c++이 편함. 근데 메모리 관리나 스레드 관리가 c나 c++이 좀 더 직접적이고 다룰게 많아서 어플리케이션 레벨 가면 스프링이나
@딥삣삐1(118.235) ml 데이터 파이프라인 쪽은 파이썬 쪽이 라이브러리도 많고 편하니까 그쪽으로 구현하기도 하고 생태계나 많이 사용하는 형태에 따라 달라짐. 그걸 너가 다 구현도 가능한데 개인이 하는건 오류나 버그가 있을수 있으니까 많이 사람들이 사용한 그러니까 버그나 오류에 대한 피드백이 많아서 안정적인 구동환경이 되는걸 택함. 현업에선 대충 이런 느낌이고
@딥삣삐1(118.235) 그래서 백엔드나 서버 다루는 직군으로 시작은 스프링도 좋음 나도 그렇게 시작했고. 근데 c++이나 메모리 스레드 관리나 좀 더 딥하게 성능 관련 다루거나 스프링에서도 객체 수명 관리 이런 걸 잘 다룰려면 cs가 필요함. 그건 현업 하면서도 채워나갈수 있고 요샌 gpt나 클로드가 잘되어 있어서. 일단 ml 서버쪽은 이렇고 모델 서빙이나 이런 쪽은
@딥삣삐1(118.235) 나도 백엔드 하다 ml 연구쪽으로 넘어와서 잘 모르는데 아마 비슷한 파이프라인의 언어나 프레임워크들 쓰고 구축하고 데이터 파이프라인으로 학습 데이터 저장하고 처리하는건 비슷할거임. 결국엔 서빙이나 웹서버에서 요청 받아서 처리하는건 비슷해서. 요청을 gpu로 처리하냐 서비스 서버에서 db crud로 서비스 로직으로 처리하냐 차이라. 포워드나 로드밸런싱 쪽이
@딥삣삐1(118.235) 아마 주이긴 할거임. 모델 올라가 있는 컨테이너에. k8s나 뭐 운영환경에 따라 다르긴 할텐데. ml엔지니어 쪽만 보면 사실 서버 쪽에 ml관련 지식인데 그렇게 딥하게 필요하단 생각들진 않음. 너가 ml 리서처 엔지니어 쪽으로 갈거면 모르겠는데. 일단 서비스 환경 구축은 백엔드로도 충분함. 그 외 지식은 사실 ml 쪽 프레임워크를 데이터 파이프라인이나 뭐
@딥삣삐1(118.235) rag를 붙일수 있냐 뭐 그런 차이라. 근데 모델 특성이나 rag 원리를 알면 더 잘 구현할수 있긴하겠지. 그 맥락에서 석사를 우대하는거 같긴한데. 선택임. 근데 요샌 뭐 좀 딥하게 들어가는 것도 괜찮아보임. ml 석사까진 해보면 가래도 모델 특성도 어느정도 이해는 가능하니까 투자해보심
@딥삣삐1(118.235) 정리하면 그냥 추상화 수준 그러니까 어디까지 다루냐에 따라 언어나 너가 사용하는 지식이 다른거지. 서버에선 메모리 스레드 관리 쪽까지 가면 os나 실제 컴퓨터 원리가 중요한거지. 요즘엔 하드웨어 스펙이 좋아져서 엥간한 그냥 게시판 급 crud는 그런것도 필요 없음. 근데 효율적으로 잘 돌아가려면 그걸 너가 알아야 하는 수준? ai 쪽도 비슷하고.
@딥삣삐1(118.235) 너가 모델 서빙만 하면 ai 표현 공간 형성이나 최적화 기법 뭐 그런건 필요 없는데 모델 연구하고 파인튜닝 프리트레이닝 레벨까지 가고싶다하면 수학도 알아야하고 그런거지. ai 모델 원리를 형식화 해놓은게 수학이라.. 아니면 너가 그걸 뛰어넘을만큼 직관이 있으면 수학도 필요 없긴함
@딥삣삐1(118.235) 질문 무시하고 답변하긴 했는데 궁금한거 있으면 물어보셈
@딥삣삐1(118.235) 답변 감사합니다! 하나만 더 여쭤보고 싶은데, 말씀하신 모델 서빙이나 ml 시스템 구축 쪽도 학사 신입 채용이 실제로 있는 편인지 궁금합니다. 저는 리서치보다 그쪽을 목표로 하고 있는데 공고를 보면 대부분 석사나 경력 위주라서 현실적으로 어떤지 궁금합니다. 또 만약 학사로 시작한다면, 처음부터 ml 시스템/mlops 쪽을 목표로 준비하는 것이 나을지, 아니면 백엔드로 먼저 경험을 쌓은 뒤 그쪽으로 넘어가는 것이 더 현실적인 경로인지도 궁금합니다. 감사합니다!!
AI 응용애플리케이션쪽은 자바스크립트(타입스크립트)로 천하통일된지 오랜데. 파이썬 node.js 아니면 관련 생태계 라이브러리도 빈약해서 뭘 해볼수없다. 응용이면 바닥부터 만들것도 아니잖아? 없으면 못하는거지 뭐
자스는 처음 듣는데 서버 쪽이면 몰라도 ml은 파이썬임
@딥삣삐3(118.235) 구닥다리 ml까지 쓰려면 파이썬인데 빅테크 api나 sdk 지원언어봐라 파이선 node.js가 퍼스트다
sdk같이 그냥 서버로 요청보내는 애들은 머신러닝 엔지니어 영역이 아닌데