[회고록] 퇴사(권고사직) 그리고 새로운 도전

Kyung Jae, Cheong·2024년 8월 10일

일기장

목록 보기
9/9

퇴사

  • 머신러닝 엔지니어로써 약 1년 5개월간의 신입 생활이 마무리 되었습니다. 회사에 머물며 좀 더 경력을 쌓고서 퇴직하려했지만... 회사 경영 악화로 인해 어쩔 수 없이 회사를 그만두게 되었습니다. 스타트업 시장이 요즘 얼마나 어려운지를 뼈저리게 느낄 수 있었습니다.
  • 참 많은 우여곡절이 있었지만 그래도 참 많은 것들을 배울 수 있었습니다. python 코딩의 재미를 느낄 수 있었고 적성에도 잘 맞았던 것 같습니다. 하지만 데이터 사이언티스트로써 연구직은 적성에는 잘 맞지 않았던 것 같습니다.
    • 일반적으로 연구직은 시행착오를 통해 최적의 답을 찾아가는 과정인데, 성과 중심의 우리나라의 기업문화에선 어떻게든 결과를 최대한 빨리 내는 것이 더 중요한 것 같아서 그런 것이 아닐까 생각해봅니다.
  • 그래도 어느정도 진로에 대한 고민을 평소에 해와서 그런지 갑작스런 구조조정에 의한 퇴사를 했음에도 나아가고자 하는 방향을 어렵지 않게 설정할 수 있었던 것 같습니다. 그래서 이젠 새로운 도전을 시작 해보려합니다!

근무하며 느낀 점들

  • 머신러닝 엔지니어 업무를 수행하면서 가장 크게 느낀 점은 백엔드나 컴퓨터 공학 지식이 상당히 필요하다는 것이었습니다.
    • 하드웨어를 기반으로 개발을 하는 곳이다 보니 비트연산이나 저항값 분석 등도 할줄 알아야했고, 서버에 저장된 다양한 데이터베이스(SQL, NoSQL, etc.)를 활용할 줄 알아야했습니다.
  • 머신러닝이나 통계분석 관점에서는 python은 거의 대체 불가한 좋은 프로그래밍 언어지만 몇가지 단점이 존재하는 것 같습니다.
    • 변수 타입 설정이 상당히 유연하여 문법이 간결하고 직관적이지만, 동적 타이핑 언어라서 대용량 데이터 처리시(억단위의 데이터도 다뤄본 결과..) 메모리 사용량이 상당히 높고 성능에 대한 최적화가 원활하진 않았습니다.
    • 결국 머신러닝 모델을 App에서 사용할 수 있도록 배포해야하는데, python기반으로는 가상환경만 갖춰지면 동작시킬수 있지만 실행 속도가 상당히 느릴 수 있습니다. 물론 tflite와 같은 방법으로 실행속도를 개선할 순 있지만, 이또한 라이브러리를 불러오는데에만 시간을 은근 잡아 먹어서 효율적이진 않았습니다. 결국 App 개발에 주로 쓰이는 프로그래밍 언어인 Java, Kotlin, Swift 등의 언어를 기반으로 동작할 수 있도록 배포해야합니다.
    • 가상환경을 세팅하고 라이브러리 버전을 관리하는 것이 생각보다 까다로운 경우가 종종 있었습니다. 특히 tensorflow나 pytorch와 같은 라이브러리를 설치하고 세팅할때 이러한 문제들이 많이 발생했고, 버전 충돌이 일어났을때 이를 해결하는데 생각보다 많은 시간이 소요되기도 했습니다.
  • 그래서 프로그래밍 지식을 쌓기위해 틈틈이 java 공부도 하면서 python만 알았을때는 알지 못했던 지식을을 상당히 쌓을 수 있었던 것 같고, ㅈ연스럽게 백엔드쪽을 깊게 공부해보고 싶다는 생각이 들었습니다.

새로운 도전 (Back-end)

  • 회사에서 배운 것들도 정리해서 올리고 싶긴하지만, 비밀유지서약을 위반할 여지가 있어 신중하게 고민해봐야할 것 같습니다.
  • 이번달은 퇴직금 정산이나 실업급여 신청으로 정신 없을 것으로 예상되지만, 시간이 나는대로 java 공부를 하고 개념들을 정리해보는 시간을 가져보려합니다.
    • 다음달 부터는 백엔드쪽을 깊게 공부해보기 위해 백엔드 교육과정을 시작해볼 예정이고, 이때부턴 블로그도 다시 활발하게 이용해보려 합니다. 그전에 여태까지 배운 java 기초 부분들을 정리해봐야겠네요.
  • 모두들 좋은 일들만 가득하길 바라고, 어려운 시기인 만큼 힘을 내 봅시다 ! 아자아자!
profile
일 때문에 포스팅은 잠시 쉬어요 ㅠ 바쁘다 바빠 모두들 화이팅! // Machine Learning (AI) Engineer & BackEnd Engineer (Entry)

0개의 댓글