안녕하세요! 현재 컴퓨터학부 4학년에 재학 중이며, 진로를 고민하다 스마트 팩토리와 공정 관리 분야에 관심을 갖게 된 학생입니다.
기존에는 웹 프론트엔드 위주로 준비하며 프로젝트를 진행해 왔으나, 우연히 MES 시스템의 복잡한 데이터 흐름과 설비 제어 로직에 매력을 느껴 이쪽 시장으로 진로를 결정하고자 합니다. 현재 WPF와 .NET 스택을 독학 중인데, 주변에 조언을 구할 곳이 없어 닷넷데브 선배님들께 몇 가지 여쭤보고자 글을 남깁니다.
1. 제가 파악한 MES 기술 스택과 흐름이 맞을까요?
공장 설비의 데이터를 미들웨어가 수집하고, 이를 .NET API를 통해 가공하여 MSSQL에 저장, 최종적으로 WPF/WinForms 대시보드로 실시간 시각화 및 제어를 수행하는 구조로 이해했습니다.
개인적으로 MES 개발자를 목표로 공부를 한다고 하면 위 프레임워크/언어 + 공정 관리에 대한 전반적인 흐름 이해 위주로 공부하면 될지 궁금합니다!
2. 어떤 토이 프로젝트를 경험해보면 좋을까요?
실제 설비가 없는 환경에서 혼자 프로젝트를 한다면 아래와 같은 구성이 포트폴리오로서 의미가 있을지 궁금합니다.
Simulator: C#으로 가상 설비 데이터를 생성하는 프로그램
Server: .NET Core 기반으로 데이터를 수집하고 MSSQL로 데이터 전송
Client: WPF(MVVM 패턴) 기반 모니터링 화면 + React 기반의 관리자 웹 대시보드
혹시 이 외에 적용해보면 좋을 핵심 로직이 있을까요? (예: 비동기 처리, 로그 복구, 가용성 처리 등)
3. 기술적 역량의 우선순위
웹 프론트엔드 경험이 있다 보니 WPF의 MVVM 패턴은 익숙해지려 노력 중입니다. 하지만 MES 개발자로서 더 핵심적으로 준비해야 할 역량이 무엇인지 선배님들의 의견을 듣고 싶습니다.
(예: 복잡한 쿼리 작성 능력, 비동기 프로그래밍 숙련도, 통신 프로토콜(OPC UA/MQTT) 이해도 등)
현업에 계신 분들의 작은 조언 하나가 길을 찾는 학생에게 큰 힘이 될 것 같습니다. 긴 글 읽어주셔서 감사합니다!
이미 뭘 해야 할 지 잘 파악하고 계신 것 같아 뭐라 답변을 드릴만한 것이 잘 떠오르지 않네요~
그래도 몇 가지 추려보자면, 일단 MS SQL Server 이외의 DBMS도 어느 정도는 파악해보시는 것을 추천 드려봅니다.
그리고 OPC 서버를 이용하면 통신 프로토콜에 대한 이해가 크게 필요 없을 수도 있지만, 그래도 Modbus 정도의 프로토콜은 파악해 두시면 어떨까 싶습니다. 포트폴리오로 구현하실 Simulator에 Modbus Slave를 구현해서 가상의 데이터를 제공하고, 그걸 상위에서 읽어 가도록 구성하면 좋겠지요~
간단히 떠오르는 건 이 정도까지네요.
그리고 혹시나 해서 말씀드립니다만, MES쪽은 현장 출장이 잦을 수 있다는 점은 알고 계시리라 믿습니다. 몸이 고생할 수도 있어요~
게다가 규모가 작은 곳에 취업하게 되면 급여도 적은데 고생만 하는 상황이 발생할 수도 있을겁니다. 그렇지만 개인의 노력 여하에 따라서 A부터 Z까지 전부 혼자 할 수 있는 인간병기가 될 수도 있을 것 같네요. 뭐, 그건 MES쪽 말고 다른 분야도 마찬가지겠지만요~
이미 잘 파악하고 있다고 말씀해주셔서 한결 마음이 놓이는 것 같습니다!
안 그래도 조금 찾아보니 OPC UA, Modbus 등 PLC와 통신을 하는 게 여러가지가 있어서 개인적으로 프로젝트를 진행할 때, 무엇을 선택해야할 지 고민이었는데 덕분에 방향성을 조금 잡게 된 것 같습니다!
MES쪽은 출장이 잦다고 익히 들어왔으나 제가 하고 싶은 공부와 일을 한다면 출장 정도는 버틸 수 있을 것 같습니다 ㅎㅎ