소설을 읽는 것에 있어서, 판타지도 가리지 않다 보니, 최근 현대판타지 중에, 프로그래머 관련한 현판을 봐버렸다...

생각보다 재밌었고, 특히 투박한 중소기업의 별 볼일 없는 자바 개발자로 시작해 지금 본 회차까지에서는 대략, 4~5년 만에 개발 실력 하나만으로 수 천억원 대의 자산가로 변모한 모습을 보여준다.

첫 능력을 보여주는 모습 중 하나로 코테를 보는 장면이 나오는데, 코테를 제안한 사람보다 코테를 잘 보고, 해당 코테의 자료구조를 활용해 성능을 개선하는 등

현실을 정확히 아는 것은 아니지만, 공부의 효용을 극대화하는 방법에 대한 내용들이 나온다.

특히, 미국에서 4~5가지의 거대 프로젝트를 진행하면서 학계에 발표된 논문들을 실제 코드로 구현해, Ai의 성능을 끌어올린다던지, 보안 수준을 올리면서 동시에 암호화된 코드의 데이터양을 줄이는 등의 내용이 나오는데,

해당 내용들을 보며, 얼마나 더 많은 학습과 정말 최종적으로 도달하고 싶고, 해 보고 싶은 모습들에 대한 면밀한 내용들이 나온다는 생각이 들었다.

우선은 취업?

나는 프로그래밍을 하는 가족 어른 분이 계신다. 그리고 요즘은 대코딩 시대라는 말이 어울릴 정도로 코딩에 대한 도전이 빈번하고 그만큼 많은 사람들이 코딩을 공부하고 있다.

이런 상황 속에서 집안 어른은 실력이 어느 정도인지는 모르겠지만 취업을 먼저 하라는 말씀을 하셨었다. 그리고 실력을 쌓고 경력을 쌓는 거라고...

그리고, 다른 코딩을 공부하는 동생이 자신의 친구가 일본에 6개월 국비 학원을 다니고 자료구조와 알고리즘은 중요하지 않고 잘 모르는 상태에서 자바 문법과 일본어를 공부해서 취업에 성공했으며, 해당 SI 업체에서 일을 하며 공부를 하겠다고 했다.

일단 나는 해당 내용들에 대해 절대 반대다.

직장은 학원이 아니니까.

내가 다녔던 두 번째 직장에서 제일 많이 상사들이 했던 말이다. 직장은 학원이 아니라고, 그래서 실제로 사람이 업무적 효용성이 낮다면 쓸 수 없다고 했다.

나는 이 말에 굉장히 공감했고, 지금 내가 프로그래밍을 공부하면서도 하는 생각이 그렇다. 내 업무의 효용성을 확실히 발휘할 수 있는 수준까지는 되어야 한다.

그 수준이 나는 최소한 자료구조와 알고리즘을 이해하고, 추가적인 수학적 능력이 최소한의 수준이라고 생각한다.
그래서 이러한 훈련이 동반되어야 한다.

그렇다고 계속 공부만 할 것인가?

집안 어른께서 내가 외부 온라인 학원 과정을 듣는다고 했을 때, 의아해 하셨다. 그 과정이 어렵고 홀로 맨땅에 헤딩한다고 생각하셔서 그러셨던 것 같다.

해당 과정에서 취업에 대한 과정도 6개월 안에 포함되어 있으며 계속 실력을 가늠할 수 있는 테스트도 함께하고 있기 때문에 나는 내가 선택한 온라인 과정 '제로베이스' 백엔드과정이 결코 나쁘지 않다고 생각한다.

현재의 나.

나는 지금 프로그래머스 문제 lv2를 풀며 공부를 이어 나가고 있다.
주말 시간인 오늘로 첫 자바 기본 입문서 901page의 책을 다 봤다.

이번 주와 다음 주는 사실, 내가 온라인 과정을 선택한 가장 큰 이유인 개인적인 일정들이 겹치기 때문에, 학습에 올인할 수 없는 상태임에도 어느 정도 최소한의 루틴과 해야하는 학습과정이 탄탄하게 잡혀 있고, 복습의 반복,
매주 반복되는 코딩테스트 등등으로

지속적인 반복과 학습으로 코딩에는 어느 정도 익숙해졌다는 생각을 하고 있다.
하지만, 그렇다고 해서 내가 백엔드 프로그래머로 업무를 시작할 수 있느냐? 아니, 더 공부할게 많은 재밌는 상황을 마주하고 있다.

공부해야 할 것들.

  1. Spring JAVA 기본서를 사며 같이 구매했던 책이다. 이제 이 책을 볼 수 있는 최소 조건을 만족했다. 이제 이 책과 함께 JAVA 기본서를 복습할 예정이다.

  2. 자료구조의 복습. 강의의 자료구조 내용을 다시 한 번 처음부터 복습하고 코드를 짜야할 것 같다. Lv2로 넘어오니 비선형 자료구조의 내용들이 나오고 있다. 서적으로 공부하고 있는 것도 있지만, 해당 책만으로는 실전 문제의 대응이 어려운 지점이 있고, 책으로 이론을 먼저 공부하고 강의를 보는 것 보다 강의를 보고 해당 내용들을 책에 접목하는 게 더 적합해 보인다.(책의 경우 코딩 스타일 자체가 C기반으로 되어 있다. 가령 String[] args가 아닌 String args [] 이런 식으로 되어 있다고 할까나... ㅎ)

  3. CS 컴퓨터 사이언스 지식은 정말 필수다. 책 한 권을 다 봤지만 해당 책 같은 경우에는 면접 대비용 책이고, 강의 같은 경우에도 압축되어 있는 내용이어서 좀 더 풀어써져 있는 서적을 한 권 더 준비하고 스스로 개념을 정립하고 컨셉을 정리해 나갈 것 같다.

  4. DB 이 부분이 정말 중요하다는 건, 아직 어렴풋이 느껴진다. 다만 현업자 특강에서 DB를 잘 다루는 개발자가 좀 더 자신들이 채용하고 싶은 인재상에 가깝다는 이야기를 했었다. 결국, DB도 개발자의 기초로 채워야 한다는 것이다.

정말 할게 많다. 그래서 더 설레는 것 같다. 특히 기본서를 다 본 경험과 강의를 다시 보고 정리를 해 나가며, CS의 경우도 다시 한 번 시작한다는 생각으로 이번 한 주를 실시할 수 있을 것 같다.

이에 더해서, 코테를 통해 부족했던 개념들을 또한 정리하고 계속 앞으로 나가며 새로운 씨를 뿌려나가며 개발자가 되어가고 개발 실력을 쌓고 있다.

6개월의 짧은 시간을 시작으로 위의 판타지소설의 내용처럼 공부하고 또 공부해서 더 좋은 개발자가 될 수 있는 사람이 되어 '실력있는 개발자'가 될 때까지 화이팅이다. :)

profile
하루 하루 즐겁게

0개의 댓글