2022년 11월 현재는 직업전환에 성공해 웹 개발자로서 근무하고 있다. 이 글을 쓰는 이유는 하던 일 그만두고 왜 개발자라는 직업을 가지고자 했고, 그것을 가지기 위해 뭘 해왔는지 정리하고 싶어서이다.
약 2년 전 우연히 접한 코딩... 예전 직업에 비하면 내 성향과 적성에 잘 맞는 부분이 훨씬 많아서 업으로 삼고자 결심하게 되었다.
생각할 시간이 충분하다.
프로그래밍은 아주아주 급박하게 돌아가지 않는다는 느낌을 많이 받았다. 어떤 기능을 구현해야 할 때 어떤 방식으로 구현할 것인지 생각할 시간이 꽤 충분한 편이고 구글에 검색하면 자료도 많다. 그래서 쫓기듯이 작업하지 않아도 되는 것이 맘에 들었다.
나는 예전에 약 5년 간 상업영화촬영팀 스태프로서 근무했었다.
영화촬영은 1분 1초가 촉박하게 이뤄지는 경우가 종종 있어 정말 쫓기듯이 일을 하는 경우가 많았다.(예를 들면 해 지기 직전까지 찍고 있는 야외 낮씬) 찰나의 순간에 빠르게 판단한 후 돌발상황에 대처하는 것이 많이 요구되는 직업이었고, 그러다보면 실수를 하게 되거나 결과가 나쁘지 않았다 해도 과정이나 결과물이 좀 아쉬울 때가 종종 생겼다. 이렇게 했으면 더 잘 나왔을텐데... 같은.
그 시절에 비하면 프로그래밍은 더 나은 결과물을 위해 고민할 시간이 있는 것이 좋았다.
작업물을 수정할 수 있다.
오늘 작성했던 코드에 대해 더 좋은 개선방향이 떠올랐다면 내일 그렇게 수정할 수 있다. 그래서 맘먹으면 이 과정을 통해 내 실력을 빠르게 향상시킬 수 있다.
이것 또한 전 직업의 단점과 대비되는 장점인데, 예전 업무에선 작업물에 대한 수정이 불가능했다. 그 순간에만 만들어낼 수 있는 결과물이고 같은 사람들과 같은 장소에서 기계적으로는 같은 세팅으로 찍는다 해도 이미 지나가버린 시간을 되돌릴 수는 없기에 항상 조금씩 결과물이 달라지게 된다. 그리고 이 결과물이 맘에 들고 안 들고는 굉장히 주관적인 영역이기 때문에... 모두가 맘에 들어하는 결과물이 나왔는데 내가 거기서 실수를 해서 그걸 못 쓰게 된다 그러면 나는 대역죄인이 되는 것이다...
그렇기 때문에 촬영을 진행할 때 구성원들이 대체로 예민하고 거친 편이고 나도 그 시절엔 참 예민했다.
그에 반해 코드는 나중에 수정할 수 있는 기회가 있기 때문에 지속적으로 돌볼 수 있는 느낌이 들어 좋았다. 그렇기 때문에 이제 더이상 예민하게 굴지 않아도 된다! 그래서 그런지 회사에 다녀보니 사람들이 하나같이 순하다는 생각이 정말 많이 들었다.
더울 때 시원한 곳에서, 추울 때 따뜻한 곳에서
실내 근무인 점이 최고 장점이 아닐까 싶다.
전 직장에선 실외 근무도 많았기 때문에 더울 때 더운 곳에서, 추울 때 추운 곳에서 일했고 근무 스케줄도 들쭉날쭉하고 일 근무 시간이 대체로 길었다. 그러다보니 몸이 조금씩 낡아가는 것이 느껴졌다.
그래서 처음 회사 출근했을 때엔 9 to 6로 고정된 근무시간이 조금 낯설게 느껴졌지만 적응되니까 규칙적인 생활을 하게 되고 좋다.
새로운 걸 꾸준히 공부하는 것이 재밌다.
일하면서 늘 공부하는 느낌이라 재밌다. 계속 같은 일만 하면서 머리가 굳어가는 느낌을 받는 것을 참 싫어하는데 개발은 그렇지 않아서 재밌다.
이것 또한 전 직장을 관두게 되었던 이유 중의 하나였다.
이 외에도 여러가지가 있지만 가장 크게 느끼는 장점들을 적어 보았다. 그럼 이제부터 본격적으로 옛날 이야기 시작...
C언어
를 접하게 된다.플레이그라운드 스위프트
로 코딩을 이렇게 하는거구나를 배웠다.자세한 TMI가 궁금하다면 아래 링크에서...
https://velog.io/@miro7923/개발자가-되기까지-2020년에-했던-것들
2020년 12월부터 게임 클라이언트 개발자를 목표로 전문 학원에 등록하고 코딩 공부를 시작했다.
약 1년 간 C/C++
, C#
Unity
등 게임 개발에서 주로 사용되는 프로그래밍 언어와 프레임워크를 배웠다.
C/C++
이 앞으로의 개발 공부에 많은 도움이 되었다. 이후 어떤 새로운 언어를 배우더라도 동작 원리를 이해하기 쉬웠다.1년 후 취직을 준비할 때 게임 클라이언트 개발자로서의 앞날에 의문이 들었다.
위에서 언급한 단점들을 상쇄시키면서 개발도 계속 할 수 있는 직업이 웹 백엔드 개발자
라는 생각이 들어 웹 개발 공부를 시작했다.
자세한 TMI가 궁금하다면 아래 링크에서...
https://velog.io/@miro7923/개발자가-되기까지-2021년에-했던-것들
2021년 12월부터 6개월 과정으로 진행 되었던 국비지원 웹 개발자 양성 과정에 등록하고 웹 개발 공부를 시작했다.
Java
, Spring framework
, RDBMS(MySQL, Oracle)
, MyBatis
, HTML/CSS
, JavaScript
, JQuery
, JSP
, Linux
, Github
들을 활용한 웹 개발을 배웠다.
배웠던 기술들이 다소 레거시이긴 했지만 게임 학원에 다닐 때에 비하면 CS
지식들을 자세히 알려줘서 좋았다.
공부한 내용들을 복습하고 나중에 다시 보고 싶어서 기술 블로그 운영을 시작했다.
CLI
환경에서의 Github
사용에 익숙해지려고 일부러 깃헙 블로그를 사용했었다.본격적으로 코딩테스트 공부를 시작했다. 하지만 여전히 어렵다.
개발 공부를 시작하고나서는 처음으로 팀 프로젝트를 해 보았다.
Pull Request
가 올라오는 등 코드 상의 수정사항이 생기면 바로바로 단톡방에서 공지했다.(메일을 확인하지 않는 사람도 많아서...)6월 초에 학원을 수료하고 6월 중순에 SI 회사에 취직이 되어 현재 재직중이다.
JAVA
개발자를 채용한다 하여 입사했으나 풀스택 개발을 지향하는 사내 분위기라 처음에 원했던 백엔드 개발
만을 할 수는 없었기 때문에 백엔드 개발자
로서의 전문적인 커리어를 쌓기 어려워 보였다.JavaScript
와 함께 프론트엔드 개발
을 하게 되었다.레거시 위주인 백엔드 기술스택을 갱신하고자 인프런에서 유명한 강의 우아한형제들 최연소 기술이사 김영한의 스프링 완전 정복 과 김영한의 스프링 부트와 JPA 실무 완전 정복 로드맵 강의 수강을 시작했다.
그 때문이었을까...? 인프콘 2022 참가자 추첨에 당첨이 되어 참가하게 되었다.
이런 추첨류 이벤트에서 당첨이 되어 본 적이 처음이라 신기했고, 개발자 컨퍼런스 참가도 처음이라 신기했다.
요즘 IT 회사에서 쓰는 기술스택과 추구하는 방향등에 대한 키워드를 얻을 수 있어 좋았다. 비슷한 목표를 가진 사람들을 많이 보니까 취직 후 적당히 현실에 안주하려던 마음을 다잡는데 도움이 되었다.
그래서 처음 웹 개발을 시작했던 때의 목표대로 백엔드 개발자
로서 전문적인 커리어를 쌓아야겠다고 결심했다.
인프콘에서 결심한 것의 시작점으로 프로그래머스에서 [스터디/14기] 단순 CRUD는 그만! 웹 백엔드 시스템 구현(Spring Boot) 과정을 수강했다.
Spring Security
, JWT
를 활용해 사용자 인증/인가 처리를 하는 로직을 배웠다. ArrayList
를 사용할 때 자료형을 지정해주는 정도인가 보다~로 알고 있었는데 전혀 아니었다.Restful API
작성 시 ApiResult<T>
와 같이 리턴 타입을 통일해 주는 기법을 배웠다.AWS S3
를 활용해 클라우드 환경으로 파일 업로드를 하는 방법을 배웠다.KAFKA
로 푸시 알림 기능을 만들 수 있다는 것을 배웠다.자세한 TMI가 궁금하다면 아래 링크에서...
https://velog.io/@miro7923/개발자가-되기까지-2022년에-했던-것들
To be continued...