2024. 3. 27. 00:44ㆍ개발자 소개글/회고록
이번 포스팅에서 올해 지금까지 내가 그동안 겪어온 개발자의 인생을 작성해 보고자 한다.
나는 학창 시절부터 부트캠프 시절 공백기의 삶이 존재했던 시기까지 경험해 본 나로서 지금까지 어떻게 개발자로 살아왔는지의 대해 작성해보고자 한다.
사실 나는 개발자로 살아오면서 진심으로 힘들었던 시기가 있었고 트라우마도 겪었던 시절도 존재하기도 했었고, 자살 충동도 겪어본 이력 또한 보유한 적도 있었다.
모든 게 골고루 갖춰지지 않았던 나는 si파견에서 초급 개발자가 중급 개발자로 투입으로 개고생 한 이력이 있었고 그러 인해 트라우마도 겪었던 적도 있었다.
사실 나는 그 당시 밑바닥부터 시작하고 싶었고, 사수에게 제대로 된 개발 문화와 소프트 스킬을 더 배워 내공을 쌓고 싶은 마음이 강했었다.
내공 쌓기는커녕 준비 시간이 필요한데 준비 시간 없이 바로 일 시작을 하게 되고 나는 그로 인해 큰 트라우마를 겪어왔었고 SI의 대해 큰 거부감 또한 겪어온 이력이 있었다.
이로 인해 나는 매일 Github 커밋 횟수를 늘리는 작업을 진행하였고 포트폴리오 작업을 꾸준히 진행을 하고 개발적인 부분에서 나의 한계점을 더 뚫기 위해 코딩과외 또한 지속적으로 진행해 왔었다.
왜 부트캠프 안 다니고 과외로 진행하고자 하는가? 나는 부트캠프는 이미 1번 수료했었고, 2번 이상은 다니기 싫었다. 이미 내가 어느 정도 갖춘 실력인 상태에서 단체 수업을 들으면 시간 낭비 기분이 들었고 맞춤형 수업이 필요하여 1:1 과외만 고집을 하였고 지금도 진행 중이다.
시간이 지나 S사 대기업 프로젝트와 SS사 대기업 프로젝트를 진행해 온 이력이 있었고 현재는 K사 대기업 프로젝트 진행 중에 있다.
사실 K사 대기업 사이트는 예전부터 악명 높은 프로젝트 중 하나여서 투입 전부터 두려움은 어느 정도 가지고 있었다.
하지만 내가 생각한 것보다 그렇게 힘든 사이트가 아니어서 그나마 운이 좋았다고 생각한다. 다만 지금까지 개발자로 살아오면서 나에게는 너무 어색한 환경에 부딪쳐보고 프리랜서로 생활하면서 소프트 스킬에 계속 부딪쳐오면서 나의 한계치를 찾게 된 계기가 되었던 부분 중 하나이다.
해보지고 않은 업무 보고, 문서 중심의 업무 체계 보고, 리포팅 작성 등 사실 나는 사용자에게 전달하는 것이 아직까지 어려움을 많이 느끼기도 하였다.
나는 사실 S사 프로젝트를 진행할 때 작업 내용은 Git으로 커밋메시지로 공유하여 작업을 진행해 오고 요구사항 문서를 읽고 개발만 하는 것만 해온 게 전부이자 내가 진행해 온 개발은 커밋내용으로 보고하는 것으로 익숙해져 있다.
대기업 프로젝트 진행뿐만 아니라 개인 시간에 Github 프로젝트를 통해 멘땅의 헤딩을 길게 이어나가다 보니 코드를 계속 업그레이드를 진행을 하여 보다 더 나은 클린 코드로 변경을 하고 꾸준히 리팩토링 진행을 하면서 안 써본 기술을 꾸준히 사용을 하여 현재의 나는 프런트와 백엔드, 앱 개발까지 개발 가능한 경지까지 올라오기도 하였가.
물론 나 역시도 아직 잘하는 편은 아니다.
내가 지금까지 쌓아온 개발 숙련도를 굳이 나열을 해보자면, 가장 근본적인 개발 기초로 필요한 부분 중 하나인 로직 활용도, 가독성 있는 코드, 중복코드 최소화, 자주 쓰는 기능은 클래스로 묶어 유틸형으로 사용, if문 안의 if문 사용 지양하기, 빅오표기법(O)이 짧은 코드로 사용하기 이런 원칙을 기반하여 작성하는 것을 추구하는 편이다.
프런트 엔드 영역은 하나인 현재 라이브러리 없이 HTML, CSS, Javascript로 이용하여 개발이 가능하며 React를 활용하여 UI라이브러리인 TailwindCss, Scss, Bootstrap, Style-Component를 작성을 진행하였고, 상태 관리는 Recoil, Redux, React-Query까지 익히면서 현재는 TypeScript를 더 선호하는 편이기도 한다.
백엔드 영역은 Java 기반으로 Spring 활용 가능하며 Spring Boot와 My-Batis, JPA까지 활용할 수 있으며 최근에는 GraphQL에 관심이 많으며 단순 복붙성 코드가 아닌 깔끔한 클린코드 로직을 선호하는 편이며, 요즘에는 Nodejs와 Kotlin에 대해 더 관심이 많으며 Java 의존도를 낮추는 것을 계획하는 편이다.
앱 분야도 관심이 가지고 있다. 실재 현업에서 Android App을 습득하고, 재능 기부 프로젝트에서 React Native를 접해본 경험을 보유하고 있으며 실제 서비스 업체에서는 React 개발자 대상으로 React Native 개발자를 선호하는 것이 현실이기도 하다.
마지막으로 Docker와 Kubernatis 기술을 사용하고 코드 최적화까지 진행 가능한 개발자까지 진행을 하는 것을 목적으로 둔다.
다시 본론으로 돌아가서 현업 프로젝트에서 내가 접해 보지 못한 부분들을 꾸준히 접할 것이며 개발 숙련도를 올려 정치적으로 인정받는 개발자나 연차로 찍어 누르는 개발자가 아닌 실력으로 인정받는 개발자가 되는 것을 목적으로 둔다.
이것이 어쩌면 지금까지의 과정은 고난과 시련이 있기에 성장하는 개발자가 되는 과정이 있는 것이라고 생각한다. 사실 나는 리스크를 감안하면서 진행 중이다. 옛날에도 그랬고 지금도 그렇다. 그렇게 까지 진행하는 이유는 내가 몸으로 직접 경험해야 알 수 있는 부분이 존재하기 때문이다.
내가 실패를 두려워했다면 아마 지금쯤이면 개발자가 되지 못했을 것이다. 실패를 겪다보면 성공이 되어 언젠간 타인이 나를 인정해 주는 사람이 오기를 바랄 뿐이다.
'개발자 소개글 > 회고록' 카테고리의 다른 글
스타트업으로 취업하려고 하는 이유 (0) | 2024.04.07 |
---|---|
내가 겪은 프리랜서로 생활하면서 느낀점 (0) | 2024.03.28 |
개발자로 살아가면서 본인은 어디까지 한계점을 느껴보았나? (0) | 2024.03.26 |
노코드 시대 개발자 관점에서 바라본 견해의 대하여 (0) | 2024.03.26 |
지금 까지 개발자로 살아가면서 개선해 나가야 하는 것들 (0) | 2024.03.19 |