0%

Post 2021, Pre 2022

해당 글은 개인적으로 성장하고 있는지를 판단하기 위해서 작성하며, 1년동안 했던 일들을 정리하고 앞으로 나아갈 방향에 대한 글입니다.


Post 2021

2021년 2월 15일, 현재 다니고 있는 회사에 입사한 날이다. 어느새 나는 2년차 엔지니어가 되었다. 1년동안 나름 열심히 달려왔다고 생각했는데 오히려 마음은 작년에 비해 더 조급해졌다. 성장에 대한 뿌듯함보다는 미래에 대한 불안함이 커지는 만큼 1년간 나의 노력들을 정리해보고자 글을 작성한다.

2020년의 나는 원래 대학원을 준비했었다. 2020년 9월에 몇몇 대학원 지원서를 작성했었는데 아이러니하게도 지원서를 작성하면서 떨어질 것을 예감했다. 왜냐하면 대학원에 입학하여 무엇을 공부하고 싶은지조차도 스스로 설명이 안되었기 때문이다. 지금 생각해보면 그때의 나는 데이터 분석이 재밌어서 공부했던거지 어떤 목표나 성취를 바란 건 아니었다. 그러다보니 당연히 서류 탈락 + 면접 탈락의 고배를 마셨다.

대학원 결과가 발표될 무렵인 2020년 12월에 스터디에서 만난 분께 입사 제안을 받았다. 구직 중이라면 현재 다니고 있는 회사를 내부 추천해주신다고 하셨고 나는 취업을 하기로 결심했다. 이력서 제출 후 대략 2개월동안 두 번의 면접이 진행되었고, 마침내 2021년 2월에 첫 출근을 하게 되었다. 첫 이력서 제출에 바로 합격이라니 지금 생각해봐도 난 정말 운이 좋았다.

업무에 관하여

내가 입사한 팀은 고객사에 파견되어 빅데이터 플랫폼을 구축해주고 데이터 엔지니어링을 진행해주는 회사였다. 처음 입사했을 때의 나는 빅데이터 플랫폼이라고는 바닐라 하둡과 스파크를 조금 만져본 경험이 전부인 새내기였고, 당연히 배울 것은 너무너무너무너무너무너무 많았다. 알아야 했던 내용들을 정리해보자.

  • 빅데이터 플랫폼을 구축하기 위한 노드들 Linux 환경 셋팅 공부
    • 이를 위해 운영체제부터 공부하기 시작
    • 공부가 대충 끝나고는 바로 앤서블을 도입해서 자동화 프로그램 개발 시작
    • 노가다는 컴퓨터에게 맡기는 것을 추구
  • 하둡과 에코시스템이 어떤 아키텍처를 가지고 있는지 공부
    • HDFS, YARN, Hive, Impala, Spark, Kudu, Ranger, Nifi 등
    • 고객사가 픽하는 에코 시스템으로 프로젝트를 진행하니 일단 다 공부하기
    • 아직도 공부할 에코 시스템이 많이 남았다는 사실
  • 데이터 워크플로우 공부
    • 보통 Hive, Impala로 쿼리엔진 사용
    • 배치 프로그램 shell로 작성해서 스케쥴링
    • 실시간으로 필요한건 Nifi로 워크플로우 작성
  • 플랫폼 인증 단일화 위해 kerberos 공부
    • 이를 위해 계정 관리 툴인 AD부터 공부하기 시작
    • kerberos 프로토콜 아키텍처 공부
  • 플랫폼끼리의 통신 보안을 위해 TLS 공부
    • 은행은 보통 폐쇄망이라서 self TLS로 구축한 뒤 인증서버에 추가한다.
    • RootCA 바탕으로 호스트 별 키 생성해서 배포하는 방식
    • 서로의 truststore에 넣어주어야 함

이렇게 적어보니 플랫폼부터 데이터 엔지니어링까지 많은 것들을 배우고 공부했었구나 싶다. 전문가처럼 완벽하게는 아니지만 위 목록들을 다 경험해봤다는 자체가 이제 막 2년차가 된 내게는 좋은 경험이라는 생각이 든다.

사이드 프로젝트

2021년에 진행한 사이드 프로젝트는 아래와 같다.

  • KBO-data 패키지
    • KBO 데이터를 수집하는 패키지 생성
    • poetry 패키지 관리
    • 수집한 데이터를 저장하기 위한 데이터 모델링
    • 데이터 모델에 대한 문서 작성
  • KBO 실시간 수집 진행
    • github action 사용하여 매일 job 진행
    • 수집된 데이터는 DB서버로 전송
    • DB서버는 대시보드와 연동
  • KBO dashboard 업데이트
    • KBO 데이터를 분석한 결과를 제공
    • Flask 기반
    • 서버 EC2에서 lightsail로 변경
  • resume 페이지 생성
    • github page 기능을 사용하여 페이지 생성
    • bootstrap 템플릿에 커스터마이징함

Hadoop 외 공부한 기술들

  • SQL: 기초 내용 공부하여 SQLD 획득했고 실제 업무에서도 사용중이다.
  • Shell script: Hadoop기반 플랫폼에서 배치 프로그램 작성하는 법 등을 배웠다.
  • Ansible: 수동으로 반복되는 작업을 자동화하고 싶어서 배우기 시작했으며, 프로그램 개발에 사용했다.
  • Rust: 러스트 가이드 공부하고 코테 문제 풀어보면서 문법을 익혔다.
  • Poetry: 파이썬 패키지 생성 및 관리 방법을 공부하고 사용했다.
  • Kubernetes: 공부중. 프로젝트 전까지 공부하다가 파견나가면서 스탑되었다.

커뮤니티 활동

현재 파이썬 커뮤니티와 러스트 커뮤니티에서 활동을 하고 있다.
2021년에는 파이콘 준비위원회로 활동하면서 후원사와 게더타운 등의 업무를 맡아서 진행했었다.

Pre 2022

이제 2022년이 되었다. 2년차는 어떻게 보내야 할까? 일단은 파견직이 아닌 곳으로 이직을 도전해 볼 생각이다. 프로젝트 파견 + 기술지원으로 여러 사이트를 맡아서 업무를 진행하다보니 정신없기도 하고 생각보다 스트레스도 많이 받은 것 같다. 또한 나는 오픈소스에 관심이 많은데 보통 고객사는 폐쇄망이라서 개발 환경에 대한 아쉬움도 있다. 마침 날 추천해준 동료분도 이직을 준비중이라고 해서 나도 조금씩 준비해보기로 하였다.

어떤 업무를 원하는가

다양한 데이터 아키텍처를 배울 수 있는 환경을 원한다. 효율성을 위해 같이 고민할 수 있는 팀에 들어가고 싶다. 사수 데이터 엔지니어가 있었으면 좋겠다. 오픈소스를 사용할 수 있는 개발 환경에서 일하고 싶다.

도전할 사이드 프로젝트

  • 2022년 파이콘 웹사이트 개발
    • 일단 장고를 공부하고 있음
    • 아직 어떻게 참여할지는 모르겠음
  • Rust로 이것저것 해보기
    • 러스트를 사용해서 무언가를 개발해보고 싶음
  • 오픈소스에 참여해보기
    • 작은 부분이라도 오픈소스에 기여해보고 싶음

공부할 기술들

  • Spark: 스파크로 실시간 데이터를 처리하는 워크플로우를 공부할 예정
  • SQLP: 올해는 쿼리 튜닝하는 방법들을 공부해서 SQLP 자격증을 도전할 예정
  • Kubernetes: 다시 공부 시작할 예정

커뮤니티 기여

올해도 파이콘 준비위원회로 활동할 예정이다.
이번에는 파이콘 웹페이지 개발에도 참여를 하려고 한다. 이를 위해 장고도 다시 공부하며 코드 분석을 하고 있다.
우리나라에서도 러스트 컨퍼런스가 열렸으면 좋겠다.