본문 바로가기

개발

MES개발자의 2024년 회고

우선 저는 2021년 4월부터 2022년 6월까지 약 1년 3개월 간 물류스타트업에서 Node.js 백엔드 개발자로 일한 경험이 있습니다.

 

그후 학위취득 및 휴식기를 가지다 2024년 9월에 MES분야의 개발자로 재취업을 하였습니다.

 

이 회사에서 난생처음 공장에 2박3일 출장도 가보고, 재미난 개발일들을 하고 있어요. 그럼 올해 했던 프로젝트들을 한번 정리해 볼게요.

 


 

1. 포XXXX

- 기간: 2024년 9월 ~ 2024년 12월(3개월)

- 백엔드: JAVA + Spring(부장님 선택), Mssql(PostgreSql 등을 고민하였으나 DB관리업체를 쓰기에는 적합하지 않았기 때문에 대중적인 Mssql 선택)

- 프론트: Pure Javascript + 상용 라이브러리(차트, 그리드, UX 등)

- 앱: Cordova(안드로이드)

- 기타: Git, BitBucket, Sourcetree

- 역할: 전반적인 프론트(40%)와 백엔드(40%), 앱 개발(90%)

 

- 호스를 만드는 회사입니다.

- 회사에 C#개발자만 있고, 웹개발자가 전무한 상태에서 부장님(개발경력 20년)과 제가 웹개발자로 입사를 합니다. 아무런 레퍼런스가 없는 상태에서 정말 바닥부터 쌓아올린 프로젝트라 참 일이 많았어요. 심지어 페이지 디자인도 부장님과 저 둘이서 했습니다. 😰 SI 프로젝트는 처음해보는 터라 공통함수등의 개념이 없었던 저는 부장님에게 깨지면서 SI를 배워갑니다.

- 프로젝트 경험이 많은 부장님은 주로 로그관리, 버튼관리, 공통코드관리, 품목관리 등 시스템적인 부분을 만들고 저는 각종 조회페이지, 차트, 실시간 모니터링 등을 맡아서 작업하였습니다.

- 프로젝트 막바지에 퍼블리셔 한분과 신입개발자 한분이 입사를 하셨습니다. 저는 만 2년차가 되기전에 후배가 두명이나 생기게 됩니다🤣 새로운 분들이 오면서, 풀스택에서 다시 백엔드만 하는것으로 역할이 변경됩니다.(가끔씩 프론트도 도와드림)

- 앱도 할 말이 많은데, 시간은 부족하고 앱은 만들어야했던 상황이라 부장님이 웹기술로 앱을 만들수있는 Cordova를 이용하자며 제안을 합니다. 뚝딱 만들어지진 않았지만 결국 안드로이드 앱을 만들어 냈습니다..! (나의 첫 번째 앱 개발)

 

2. DXXX

- 기간: 2024년 12월 (웹단 2주)

- 백엔드: JAVA + Spring, Mssql

- 프론트: Pure Javascript + 상용 라이브러리(차트, 그리드, UX 등)

- 앱: Cordova(안드로이드)

- 기타: Git, BitBucket, Sourcetree

- 역할: ERD 작성 및 시스템 분석(20%), 백엔드 개발(70%)

 

- 냉장고 문짝을 만드는 회사 입니다.

- 부장님이 너도 이제 ERD 설계를 할 줄 알아야되지 않겠냐며 ERD 그리는법을 가르쳐 주십니다. 상대적으로 작은 프로젝트라 ERD 구조가 그리 어렵진 않았습니다. ERD를 설계하려면 개발지식도 물론 중요하지만 공장의 업무프로세스를 확실히 알아야 해요. 프로젝트 기획단계부터 참여하였다면 프로세스를 어느정도 알고있었겠지만, 부장님과 저는 설계가 완료되고 입사를 했어요. 그래서 이 프로젝트의 모든 문서를 뒤져서 사업계획서, 회의록 등을 샅샅이 읽어가며 ERD설계를 했습니다. 

- 퍼블리셔분이 CSS를 잘 만들어 주셔서 웹이 생각보다 빨리 끝났어요. 전 프로젝트에서 코드를 재활용한 부분도 있고, 이건 2주만에 마무리를 하였습니다.

- 다만 설비와 통신하는 C# 프로그램이 아직 완료되지 않았습니다. C# 개발자가 한 분 계시는데 건강이슈로 작업을 거의 못하고 계세요. 상황을 보고 제가 C# 또는 일렉트론으로 설비제어 부분을 작업해야 할 수 있습니다. 설비제어쪽 이슈사항은 2초마다 정확히 동시에 3개의 다른 컴퓨터로부터 요청이 온다는 거에요. 이 경우 DB데드락을 어떻게 예방할까가 관건입니다.

 

3. 신XXX

- 기간: 2024년 12월 ~ (진행중)

- 기타: Git, BitBucket, Sourcetree

 

- 물류회사 입니다.

- 기존에 있던 시스템의 성능개선 + 새로운 기능 개발의 "차세대" 프로젝트에요. 개발 페이지수가 웹 100개, 설비제어 10개, 근태관리 앱 15페이지 정도 됩니다. 1번 + 2번 프로젝트를 합한 것보다 더 양이 많아요. 테이블도 50개를 넘어갈 것으로 예상됩니다.

- 기존 시스템에 데이터가 쌓이며 기존 시스템의 쿼리성능저하 문제가 발생하였습니다. 단순 품목조회의 경우도 30초씩이나 걸려서 쿼리를 확인했더니 SELECT요소에 쿼리를 적어놓는 등 아주 극단적으로 비효율적인 쿼리를 작성해 두었더라구요.😱 이런 기존 쿼리들을 다 튜닝해야 합니다.

 


다음은 저의 첫 직장이에요. 나중에 이력서에 적으려고 써둡니다.

 

0. 물류 스타트업

- 기간: 2021년 4월 ~ 2022년 6월

- 백엔드: Node.js + Express

- 프론트: Vue.js

- 기타: AWS, Git, Github

- 앱: 기억안남

- 역할: 백엔드(50%).

- 특이사항

  • 거리, 날씨, 시간, 공휴일 별 스마트 요금계산 시스템
  • 앱의 GPS정보 바탕으로 배달기사의 위치를 실시간으로 표시함
  • 주문정보 및 배달상태를 백오피스에서 실시간으로 확인 가능(Hook 사용)

- 사수분과 둘이서 서비스 전체의 백엔드를 담당하였습니다.

- 서비스는 크게 배달기사용 앱, 주문 웹, 백오피스 웹 세 가지로 나뉘었습니다.

 

여기에선 일을 정말 잘하시는 개발자 팀장님을 만나서, 일하는 방법을 많이 배울 수 있었어요.

 


 

2024년은 Java개발자로 직무전환(?)을 한 뒤 풀스택을 거쳐 다시 백엔드를 담당하게 되었고, ERD 설계도 조금 맛본 아주 알찬 경험을 한 해였습니다. C#개발자 분이 하시는 시리얼통신 등도 멋있어보여 내년에 도전하고 싶어요! 프로그램으로 공장의 설비를 직접 제어한다니 정말 멋있지 않나요? 다만 제가한다면 C#이 아니라 일렉트론으로 껍데기만 데스크톱 프로그램처럼 만들 확률이 높습니다.

그리고 내년에는 개발자도 더 늘 예정입니다.(현재 5명) 처음 제 후배가 들어온다고 했을땐 걱정이 많았는데 들어온 지금도 걱정이 많아요. (못하면 못해서, 잘하면 잘해서 걱정임🤣 그리고 너무 딱딱한 선후배 관계가 되지 않도록,,) 내년에는 제 업무능력이 쑥쑥 자라서 연봉도 많이 오르길 바랍니다!! 

 

'개발' 카테고리의 다른 글

개발 이력 관리 (2025년 3월 ver.)  (0) 2025.01.08
postgresql 서버의 유저, 권한 개념  (0) 2024.10.24
CSS 선택자(Selector) : 자식선택자, '>'  (0) 2021.11.28
공인 IP, 사설 IP  (0) 2021.05.01
도커 사용법  (0) 2021.04.30