소감 & 회고록

비전공 백엔드 개발자 1년 생존기

왈왈디 2024. 8. 31. 15:54
728x90


지난주를 기점으로 IT회사에 입사하여 백엔드 개발자로 일한지 1년이 되었다.

작년 3월 다니던 회사를 뛰쳐나와 개발 공부를 시작하던 때가 생각난다.

 

1년 6개월 밖에 지나지 않았는데,

새 삶을 살고 있는 것 같다.

 

입사 1주년 기념으로 새로운 시작을 한 나의 인생을 종합적으로 돌아보며

지극히 개인적인 감상들을 적어보고자 한다.

챗 지피티가 그려준 그림... 아무리 수염 빼달라고 해도 안 빼준다....

개발자가 된 이유

경영학과 출신에 이전에 다른 직무 경력이 있다고 이야기하면 어떻게 개발자가 되었느냐 묻곤 한다.

그런 질문을 받으며 계속 생각해보았을 때,

나는 갑자기 개발자가 된 것이 아니라,

원래 개발자가 될 운명이었는데 멀리 돌아왔다는 생각이 들었다.

 

아주 과거로 돌아가서, 

고등학생 때 즈음 '정보' 수업에서 html을 배웠던 기억이 난다.

친구들은 그 수업을 싫어하고 어렵다며 우는 소리를 많이 했었다.

튀고 싶지 않아서 입 밖으로 얘기하지 않았지만

나는 그 수업이 참 쉽고 재밌었다.

 

고등학교 2학년 때 문이과가 나뉘어졌는데,

당시 여고를 다니던 나는 이과를 선택하는 아이들이 적으니

수가 적은 쪽을 선택하면 리스크가 크다는 요상한 판단으로

수학과 과학을 좋아했음에도 문과를 선택했다.

이때부터 먼 길로 돌아가는 여정이 시작되었다.

(지금처럼 문이과가 통합되어 있었다면 꽤나 다르게 흘러갔을 것이다.)

 

대학은 경영학과로 가게됐는데, 부모님의 영향이 컸다.

어릴 적부터 작은 일을 하더라도 네 일, 네 사업을 해야 한다고 배웠다.

(그 생각은 여전해서, 문과 중에서라면 경영학과가 나쁘지 않은 선택이었다고 생각한다.)

 

대학교 신입생 때 전교생 필수 교양 수업으로 파이썬 강의를 들어야 했다.

파이썬 수업에서 고등학생 때 html을 배우며 느꼈던 우월감(?)과 흥미가 다시 떠올랐다.

같이 듣는 친구들은 어려워하는데, 나는 너무 쉽고 재미있었다.

공부를 별로 하지 않아도 성적이 잘 나왔다.

(물론 교양 수업이라 난이도가 높지 않았고
문이과 캠퍼스가 분리되어 있어서 함께 수업들은 이들은 모두 문과생들이었다.)

 

경영학 수업 중에서도 경영 통계, 경영 과학, 경영 데이터 분석 같은

분석적인 과목들을 가장 좋아했다.

 

컴퓨터 공학을 복수 전공하고 싶은 생각이 계속 있었지만,

캠퍼스가 분리되어 있어 시간적으로도 심리적으로도 부담이 컸고

경영학 관련으로 교내 활동을 활발히 하느라

정신을 차리고 보니 졸업해버렸다.

 

경영학 분야에서 하고 싶었던 일이 없었던 건 아니다.

컨설턴트가 되고 싶었다. 그래서 첫 번째 회사로 컨설팅 펌에 들어갔다.

원래 전략 컨설팅이 목표였는데,

전략 컨설팅 펌은 아니었으나 데이터 분석을 하는 컨설팅 업무라는 직무 설명에 이끌려 입사했다.

 

첫 회사에서 하던 일은 그다지 즐겁지 않았다.

주된 업무가 보고서 발행을 위해 엑셀로 10만개가 넘는 설문 응답 데이터의 300개 이상의 컬럼에 필터를 걸어가며

논리적으로 잘못된 데이터가 없는지 검수하는 일이었다.

반복적이었고 눈이 아팠다.

 

그러다 업무 자동화에 관심이 많은 선임님과 함께

이 업무들을 엑셀의 VBA로 자동화하는 프로젝트를 진행하게 되었다.

졸업 요건으로 컴퓨터활용능력 자격증을 따며 배운 VBA 실력을 활용했다.

 

데이터를 검수하는 알고리즘을 짜고

VBA로 구현하고, 테스트해서

동료 직원들 업무 시간을 대폭 줄여줬을 때 쾌감이 매우 컸다.

 

원래도 늦게까지 야근하는 날이 많았는데, 야근할 때는 항상 우울했었다.

그런데 코딩하느라 야근하는 날은 우울하긴 커녕

시간 가는 줄 모르고 빠져들어 하다보니 밤이 되어있었다.

 

지루한 회사를 계속 다녔던 이유는 월급이 꽤나 짭짤했기 때문도 있었기에

매일 지치고 우울해도 돈을 버는 것은 원래 힘든 일이구나 생각했었다.

 

그런데 재미있는 일을 발견해버리니

즐거운 일을 하는데 돈을 받는다면

그 금액이 적더라도 그건 대가 없는 보상이니

완전히 신세계라는 생각이 들었다.

 

개발이 적성에 맞다는 생각 뿐만 아니라

개발자들의 수평적인 문화, 자발적인 학습, 열정적인 분위기, 개인주의, 창업에 유리하다는 점

모두 나에게 꼭 맞는다는 생각이 들었다.

 

머릿속은 개발자가 되어야 할 100가지 이유로 점령당했고,

한 달 정도 퇴근 후 인프런에서 비전공자 개발자되기 강의를 듣다가

수강료가 800만원이 넘는 오프라인 코딩 부트 캠프를 등록해버렸다.

부트 캠프 시작일이 정해지니 퇴사일이 정해졌고, 그렇게 2년 가까이 다닌 회사를 떠났다.

개발자가 된 과정

퇴사 후 3개월 동안 오프라인 부트캠프를 수강했다.

WECODE라는 학원이었는데, 지금은 오프라인 코스는 운영하지 않는 것 같다.

 

한 기수에 프론트엔드와 백엔드가 절반씩 있어서,

강의, 프로젝트, 실무 체험을 각각 1개월 동안 진행하는 프로그램이었다.

 

백엔드 언어와 프레임워크는 node.js express 였다.

지금 생각해보면 node.js 였기에 3개월만에 가능했던 것인데,

당시에는 개발 언어에 대해 잘 몰랐기에 3개월만에 개발자로 취업 시켜주겠다는 곳이 이 곳 뿐이라

빨리 개발자가 되고 싶어 이 학원을 골랐었다.

(다시 돌아간다면 어떤 언어가 더 수요가 많고, 전망이 밝은지 따져보고

조금 더 걸리더라도 그 언어를 가르치는 학원에 갔을 것 같다.)

 

아침 10시부터 밤 10시까지 학원에 머무르며 강의 듣고, 공부하는 일정이었다.

투자한 돈과 시간, 기회비용이 아깝기도 했고, 재미있기도 했고, 후회하고 싶지 않아서 열심히 했다.

10시보다 늦게 귀가하는 날도 종종 있었고 주말에 하루는 쉬고, 하루는 학원에 나가서 공부를 했었다.

 

학원을 수료하고 한달 반 정도 혼자서 CS와 알고리즘을 공부하며

몇몇 회사에 이력서를 넣었다.

 

그 과정에서 이 블로그 최고 인기글(?)인 네이버 부스트 캠프 탈락 후기도 나오고,

그러다 지금 다니는 회사의 코딩 테스트와 면접을 보고 입사까지 하게 되었다.

 

당시에는 나름대로 열심히 공부하고 면접 준비도 했다고 생각했지만,

지금 돌이켜 보면 그때의 지식은 참 얕고 좁았다.

면접에서 아예 대답하지 못한 기술 질문들도 있었다.

운이 좋게도 당시 면접관이셨던 cto님께서 나의 가능성을 높게 평가해주셨다.

기초 지식을 중시하는 다른 분이 면접에 들어오셨다면 합격할 수 없었을 거라 생각한다.

 

그렇게 개발자로서의 회사 생활이 시작되었다.

개발자가 되고 좋은 점

나는 이 직업이 참 좋고 직업을 바꾸고 삶의 만족도가 급상승했다.

흔히 알려진 장점들도 많지만, 내가 개인적으로 강하게 느낀 장점들을 꼽아봤다.
(더 많은데 모두 적기 힘들어서 추렸다.)

  • 일의 즐거움
    가장 근본적이고 중요한 장점이다.

    더 이상 회사 가는 것이 괴롭지 않고, 회사에 머무는 시간이 아깝지 않다.
    업무는 흥미롭고 하다보면 시간 가는 줄 모를 때가 많다. 동료들과 토론하는 시간은 흥미진진하다.

    기존에는 회사는 내가 시간과 정신력을 소모하면 그 대가로 돈을 주는 거래 관계라고 생각했다.
    지금은 나는 일을 하며 배우고 학습하고, 회사는 돈을 버는 공생 관계라고 생각한다.
    회사는 나에게 양질의 학습 기회를 주는, 그러면서 돈도 주는 혜자 학교인 셈이다.
    학원에 다닐 때는 3달에 800만원을 냈는데,
    회사는 오히려 돈을 준다니 얼마나 고마운 일인가.

    최근 취직한 친구에게 일은 재미있냐고 물었다.
    친구는 일이 재미있는 사람이 어딨겠냐고 되물었다.
    난 대답 없이 속으로 (친구에겐 미안하지만) 내 직업을 바꾸길 정말 잘했다고 생각했다.

    보통 우리는 깨어있는 시간 절반 이상을 회사에서 보내는데,
    그 시간이 지루하거나 괴롭지 않다는 건 큰 행운이다.

  • 객관적인 성과 지표
    이전 회사 생활에서 아쉽게 느꼈던 지점 중 하나는
    나의 능력에 대한 객관적인 피드백을 얻기 어렵고, 평가 지표가 정량적이기 어렵다는 점이었다.

    인사 평가 기간에 어떤 점이 나의 강점이고, 어떤 점이 부족한지 알고 싶어
    상사에게 피드백을 요청했는데,
    잘했다는 식의 대답은 들었으나 그게 전부였다. 

    사내에서 좋은 평가를 받더라도,
    내가 정말 이 사회에서 수요가 있는 능력을 갖추었는지 확신할 수 없었고
    회사 밖에서는 이를 어떻게 증명할 것인지 고민이었다.

    팀 헤드분에게 매일 아침 커피를 사다드리고 그 분과 사적으로 친하게 지내는 동기가 있었다.
    그 동기는 (내가 느끼기에는) 가시적인 성과에 비해 평가가 좋았다.
    동료들은 상사와 좋은 관계를 유지하는 것도 그의 능력이라고 했다.
    받아들이지 못할 이야기는 아니었지만,
    그것이 내가 키워야할 능력이고 나아가야 할 방향인지에 대해서는 의문이 들었다.

    개발자가 된 지금 속시원한 점은 다른 사람의 피드백을 기다리지 않아도
    눈 앞의 컴퓨터가 즉각적인 피드백을 준다는 것이다.
    잘못짠 코드는 에러를 뱉고, 잘못 만든 기능은 기대한 대로 동작하지 않는다.
    어디를 어떻게 개선할 지도 에러 메시지를 읽어보거나 구글링 해보면 대게 금방 알 수 있다.

    평가도 꽤나 정량화가 가능하다.
    물론 사람이 하는 일이니 정성적인 부분이 완전히 배제될 수는 없겠지만,
    내가 만든 기능과 서비스가 많고, 해결한 이슈가 많다면
    누가 평가하든 결과가 크게 달라지지 않을 것이다.

    그리고 그렇게 키운 능력은 회사 밖을 나가더라도 유효하다.

  • 끝 없는 자기 계발
    나는 본래 공부하는 것을 좋아하는 편이다.
    새로운 지식을 습득하고 사용하는 과정이 즐겁다.

    이전에는 퇴근 후에 뭘 공부할 지 몰라 방황했다.
    야근이 잦아 공부할 시간이 많지 않기도 했으나,
    공부 하면 업무에 즉각 활용할 수 있겠다 싶은 것이 명확하지 않았다. 

    영어 공부와 재테크 공부를 하곤 했는데 (재테크는 성과가 좋지 않았다...)
    좀 더 나를 업그레이드 할 수 있는 방법을 찾고 싶었다.

    개발자가 되고 이런 고민은 더 이상 사치가 되었다.
    오히려 공부해야 할 것이 너무 많아서 뭘 공부해야 할 지 방황하게 된다.

    공부하고 싶으면 하면 되고, 공부한 만큼 업무에 바로 적용할 수 있다.
    정직하고 투명하다.

  • 자유로움
    회사에 내 자아를 의탁하거나,
    회사에 의존적인, 회사 밖에 나가면 아무것도 아닌 사람이 되는 것을 매우 경계하는데,
    개발자는 내 능력과 지식이 특정 회사에 귀속되거나 국한되지 않아서 좋다.

    내가 원한다면 프리랜서로 활동할 수도 있고,
    창업도 가능하다. (성공은 보장되지 않지만)

개발자가 되고 나쁜 점

세상에 좋은 점만 있는 일은 없으니까,
객관화를 위해서 나쁜 점도 꼽아 보았다.

  • 끝 없는 자기 계발과 객관적인 성과 지표
    공부하는 게 좋긴 해도 가끔은 공부할 게 너무 많다는 사실에 압도되곤 한다.
    해도 해도 끝이 없는 기분이다.
    항상 공부만 하는 건 아니지만,
    쉴 때도 마음 한 켠에는 지금 노느라 못한 공부에 대해 생각하게 된다.

    성과 지표가 객관적이라는 건 못했을 때도 명확하다는 것이다.
    배정된 작업이 너무 어렵게 느껴지는데
    시간이 촉박할 때는 초조한 마음에 스트레스가 꽤 크다.

    그 동안 공부를 더 많이 했더라면 이 일을 더 빨리 해냈을 거라는 후회로,
    압도됨과 초조함의 순환 고리가 만들어진다.

  • 조급함
    비교는 만악의 근원임을 알지만
    전문직으로 일하고 있거나 대기업에서 연차 쌓인 대학 친구들과,
    어리고 경험 많고 재능 있는 개발자들 사이에 있다 보면
    조급하고 불안한 마음이 든다.
    남들보다 뒤쳐져 있다는 생각.

    해결 방법은 다른 사람과 나를 비교하지 않고,
    비교할 바에는 어제의 나와 오늘의 나를 비교하는 방법 뿐인 것 같다.

    비교하는 마음이 들 때면
    내가 한 선택이 얼마나 자랑스럽고 내 삶을 나아지게 했는지 생각하고,
    어제의 나를 이기는 것에 집중해야겠다. (이것도 쉬운 일은 아니다.)

1년이 지나고 느끼는 것

개발자가 되고 얼마 안 되었을 때는

앞에서 순서를 세는 것이 더 빠른 레전드 개발자가 금방 될 수 있을 줄 알았다.

 

1년의 경험이 쌓인 지금은

내가 모르는 지식과 기술은 너무나도 많고

옆자리 동료들에게 배울 것이 너무나 많고

이 세상에 나만큼 재능있고 나보다 좋은 개발자는 너무 많다는 것을 알게 됐다.

 

그러나 스스로의 한계를 낮게 보고 비관하는 것도 별로 좋지는 않은 것 같다.

다시 신생아 개발자 시절의 패기를 되찾아야지.

최고가 되지 않아도 좋지만, 최고가 되려는 사람과 포기한 사람은 다르다.

 

한 줄 요약하자면 개발자가 된지 1년이 된 시점
나는 개발자라는 직업을 사랑하고 이런 결정을 한 내 자신이 자랑스럽다.


80세 개발자 생존기를 적을 때까지 앞으로도 킵고잉~

728x90