fovibigj23
33
2021-04-26 23:22:28 작성 2021-05-13 22:41:37 수정됨
11
830

저 같이 생각없이 커리어 설계하지 마세요


저 같이 생각없이 커리어 설계하지 마세요.


개발(?) 3년차입니다.


제 경력을 보면 백앤드개발자인지 devops개발자인지 상당히 애매합니다.

지금으로써는 이도저도 아닌것같아서 처음부터 다시 할라구요.


너무 구체적으로 써서 같이 일한 사람들은 절 특정할 수도 있긴한데, 회사 욕은 아니구요.

제가 이런 팀에, 이런 시기에, 이런 포지션으로 온게, 아무 액션도 안한게, 문제죠 뭐.


1. 입사

- 파이썬 + ML 졸작으로 어필해서 입사. (TF팀 배정)

- 당시 팀에서는 ML 플젝진행중이라 잡일할 신입이 필요했던 것 같음.


입사 ~ 0.5년

- 데이터 정제하는 파이썬 스크립트 짬

- 파트원들 다나가서 ML 프로젝트 중단됨. (그 짧은시기에 위에 5명?정도가 나가버리더라구요. 사수가 한달마다 교체ㅋㅋ)

- 팀 해체


0.5년 ~ 2년

- 다른 팀으로 병합됨

- 서버실에 있는 서버들 10대정도 묶어서 Kubernetes 클러스터 만들고 서비스 배포. (베어메탈이라고 하죠.)

- 빌드, CI 쪽, Config쪽, Nginx 등등 만지면서 배포. (배포 실패 경험 무수)


- 가끔 Flask 웹서버에 API 하나 띡 만들고 수정하고 그럼. (간단한것들)

- 가끔 AWS기반 Java 웹서버 서비스도 만짐. 간단한 API 몇 개 만들고 수정, S3, DynamoDB도 만졌지만 대단한건 아니고 걍 테이블 하나 더 추가하는 정도.  ELK도 그저 beat, logstash, es 만들어놓고 값 호출하는 정도만


- 정기적으로 ES에 값 조회, Kafka에 메시지받아서 메일보내는 파이썬 스크립트 만듬. 컨테이너안에서 파이썬 프로젝트 띡 계속 도는거.


- 팀 또 없어짐.


2년~3년

- 다른 신규 프로젝트 참여

- 서버 10대정도에 쿠버네티스 클러스터 구축함.

- 이쯤되서 쿠버네티스 사용? 설계? 하는 방법같은건 감이온듯

- MSA라서 서비스별 Dockerfile 만들고 빌드스크립트 같은거 만듬. 인그레스, nginx, 설정, CI 만듬.

- 로컬에 제품 설치하는 파이썬 스크립트 만듬. k8s 라이브러리 써서 배포되게.

- 파이썬으로 FastAPI 웹서버 띡 만듬. 별기능없이 CRUD만. (성능고려, 다수유저고려, 트래픽고려, 동시성고려 등등 암것도 안함). 걍 curl 날리면 API 받고 응답해주면 된거임

- 주배야개 : 낮엔 배포 노가다 ("이거 수정했어요 배포해주세요" 요청받기x6명), 밤에 다 퇴근하고나서야 맡은 서비스 개발


전체적으로

- 성능 따져본 일이 없음. 돌아가면 OK

- 유닛테스트 코드 없음, 배포 전 다같이 기도.

- 코드리뷰는 거의 요런식 ----- "잘 돌아감?" -> "네" -> "그럼 올려"( == '안되면 너 책임')

- 문제발생 시, "음 일단 그럼 서버 껐다켜" . (원인해결 보단 일단 지금 닥친것부터)




결론
딱히 문제 해결 경험이 없음. 문제발생하면 걍 서버 내렸다 올렸으니까
개발할 땐 일정에 치여서 일단 돌아가는지가 1순위였으니까

나름 제가 맡은 부분에서 성능 개선하려고 많이 노력하긴했는데. 3년차 서버개발자라고하기엔 좀.... 쿠버네티스 구조 최대한 이쁘게, 빌드 잘 이쁘게 되게, 이미지 용량 최적화, DB 구조 조금 변경하거나, 프로세스 하나 돌아가는 파이썬 스크립트 쪼가리 만진게 전부이니.



백앤드개발자라면 고민했어야할 것들을 놓친 것 같네요. 많이..
-  유저 몇명까지 쓸수있게 만든다거나,
- 응답속도나 성능이 좋게 만든다거나,
- 사람들이 많이 쓰는 서비스를 만든다거나


DevOps라 하기도 좀... 아래와 같은 경험은 있어야하지 않나..?
- 뭐 얼만큼의 트래픽을 감당하게끔 설계했다라던가,
- CI/CD 사이클을 온전하게 만들어서 완전 자동화한다던가,
- 뭐 코드 저장소부터해서 Public cloud 화 했다던가



안일했던 제 자신을 혼내는 겸, 한탄하는 겸, 커리어 설계 좀 다시 하는 겸 긴글 써봤습니다.
읽어주신분들께는 감사드리고 답변주신 분들께는 매우 감사할 것 같습니다.

0
  • 댓글 11

  • kenu
    53k
    2021-04-26 23:34:06

    잘 하고 계십니다.

    자기가 짠 프로그램으로 웃는 사람들 수를 늘려주시면 세상이 좋아지겠죠.

  • fovibigj23
    33
    2021-04-26 23:39:43 작성 2021-04-26 23:40:18 수정됨

    kenu님 답변 감사합니다.

    사실, 공들인 서비스들을 사용하는 사용자가 거의 없어 웃는 사람을 별로 못봤습니다.

    앞으로 개인프로젝트로라도 웃는 사람들을 만들어보려구요.

  • 니르바나
    2k
    2021-04-27 05:04:23

    쉬엄쉬엄해도 되요.

    인생 길고, 60~70넘어서까지 개발하는 사람 잘 없습니다.

    난 좀 느리지만 죽을때까지 개발할 수 있도록 꾸준히만 하자는 생각으로 하시면 마음이 편해지실거에요.

    높은 곳과 비교하면 한 없이 부족한 것 같아 수치심이 들고, 낮은 곳과 비교하면 한 없이 우월 해져서 기고만장 해질 수 있으니 되도록 비교하진 마셔요.

    개발하다보면 분명히 부족한게 느껴지실겁니다. 필요한 것도 느껴질거구요.

    테스트 코드 , CI/CD 적용하는 이유가 일거리를 줄이기 위한거죠.

    실 서비스 운영하다가 잘 되던게 안되면 언제까지 서버 내리고 올리고 할 수도 없는거고, 그렇게 해도 안되는 문제가 발생하지 않도록 사전에 방지하는거라 생각합니다.

    이게 서비스 자체의 신뢰문제니까요.

    그리고 내가 직접 서비스를 운영하더라도 매번 코드 넣기 전에 빌드하고, 테스트 돌리고, 리그레션 난건 없는지 이런거 일일히 체크하는게 몸에 베여있으면 좋지만, 그렇지 않으면 혹시 모를 테스트 안된 코드가 실제 서비스 코드에 들어가면 낭패가 되기 때문에 CI 구축하는거죠.

    CD는 코드를 정상적으로 저장소에 옮겨도 배포라는 과정이 남았기 때문에 배포까지 자동화 하기 위해서 CD가 있는거구요.

    CI/CD가 말이 어렵지 실제로 구축해보면 서버 운영관점에 대한 지식만 있으면 구축하는 것 자체는 많은 어려움이 없을거에요.

    기술이라는 것은 분명한 목적이 있습니다. 내가 그 목적에 부합하는 상황이라면 사용하는거고, 아니라면 사용하지 않아도 되는거죠.

  • 마라토집착
    3k
    2021-04-27 07:31:19

    이 글 쓰신분은 인프라 개발자인가요?  너무 테크니컬 해서요

    저는  업무중심이고 sql과 씨언어 또는 스프링으로  데이터마트 구축하는데요.  글쓴분이 말하신 부분은 다른팀에서 하고 

    저는 유식스 shell sed awk 이런거 sql 등 가지고 고객별 금융에서 위험지수(대출 해주면 은행이 손해날 가능성)  이런거  관련 디비 테이블과 배치잡 설계 합니다

    저는 ㅎ 저를 devops로 봤는데 , 개발하면서 운영도 같이하는 si sm 동시 수행이라 

  • 손님
    592
    2021-04-27 11:20:05

    개발과는 다른 분야를 팠다는 것 뿐이지 가치없는 일을 했다고는 생각이 안드는데요...

  • daywalker
    1k
    2021-04-27 11:25:01

    이미 문제점에 대해 잘 파악하고 계시네요.

    이제 이직만 하시면 됩니다.

  • fovibigj23
    33
    2021-04-27 13:01:52

    니르바나님 감사합니다.

    비교보단 당시 회사 목적에 맞는 일을 열심히 했다는 데 의의를 두겠습니다.

  • fovibigj23
    33
    2021-04-27 13:06:19

    미라토집착님

    저는 인프라개발자라고 말하기는 뭐하지만 인프라스럽게 된 것 같습니다ㅎ 다른 회사는 제가 했던 일들을 별도의 팀에서 하는군요.


  • fovibigj23
    33
    2021-04-27 13:09:59

    손님님

    저도 나름 가치있는 시간들이었고 넓은 경험이었다고 생각합니다.

    이제는 방향성을 잡고 더 깊게 파고들 필요는 있을 것 같아요.


  • fovibigj23
    33
    2021-04-27 13:13:52

    daywalker

    이쯤에서 퇴사한게 잘한 선택같습니다. (최근 퇴사했습니다.)

    시간도 있고 문제도 파악했으니 생각하고 움직여보겠습니다.

    그동안 못챙겼던 github, 블로그도 정리하고 okky 활동도 시작해보려구요.

    앞으로 잘 부탁드립니당

  • MoonShot2025
    4
    2021-04-27 17:34:05

    응원합니다~

  • 로그인을 하시면 댓글을 등록할 수 있습니다.