티스토리 뷰
① 학습 가이드 To-do-list 지키기
지금 다니고 있는 제로베이스 백엔드 스쿨에서는 수강생들의 학습방향과 계획을 어느정도 잡아주기 위해
매일 혹은 매주에 진행되는 To-do-list를 제시해주고 있다.
매일마다 들어야하는 강의 목표치가 있고 지금까지 주어졌던 깜짝과제 및 미니과제(개인적으로 노베이스 상태에서 풀기엔 어려운 난이도라고 생각)나 특별 온보딩(특정 자료구조 관련 문제풀이 & 노트정리)과 pre 코딩테스트가 있었다.
이렇게만 보기에도 꽤 알차보이는 것 같지만 끊임없이 발전하고 성장해야하는 백엔드 개발자가 되려면 제시된 To-do-list 만으로 만족해선 안된다고 생각이 된다.
특히나 나는 전공자도 아니고 백엔드 관련해서 따로 학습한 부분도 없다.
다른 분들의 개발 블로그를 보다보면 전공자이신 분들도 있고 이미 전에 개발자 일을 하셨던 분들도 있었는데
그 분들의 실력만큼은 따라가야 백엔드 개발자가 되기 위한 첫 걸음이 될 수 있을 것 같았다.
어찌보면 그 분들은 백엔드 스쿨 안에서의 자그마한 모티브라고 볼 수 있겠다.
그러므로 나는 To-do-list는 최소한의 지켜야할 가이드 라인이라고 보고 추가로 백엔드 책을 사서 학습해보려고 한다.
물론 강의를 듣고 복습도 기본으로 할 것이다.
이게 강의를 보고나면 당시에 이해를 하고 넘어가도 금세 잊어먹는 경우가 있어서 말이다.
② 코딩 테스트 준비
코딩 테스트를 잘하기 위해서는 자료구조와 알고리즘의 기본 개념에 빠삭해야 하고 응용력과 구현력이 뛰어나야 한다.
나는 제로베이스 백엔드 스쿨을 등록하기 전에 백준 온라인 저지에서 어느정도 600문제 가량 풀어본 경험이 있는데,
알고리즘을 계속 판 나머지 마이너한 알고리즘까지 접하며 풀어본 것이 너무 아쉬운 판단이라고 생각이 들었다.
segment tree, swiping, lazy propagation, ett, 밀러 라빈 소수판정법, 폴라드 로 알고리즘, 고속 푸리에 변환 등이 그런 것 들이었다..
그저 미지의 영역에 대한 탐구심과 호기심이 나를 여기까지 이끈 것 같다.
솔직히 지금 구현하라면 기억도 잘 안나고 차라리 실제 기업에서 보는 코딩 테스트가 요구하는 알고리즘과 관련해서 여러문제를 푸는 것이 훨씬 도움이 됬을 것이다.
지금부터라도 늦지 않았으니 기업 코테 알고리즘 관련 문제들을 풀어보도록 해야겠다.
- 자료구조 ─ 배열, 리스트, 세트, 맵, 스택, 큐, 덱, 트리, 그래프
- 알고리즘 ─ 브루트 포스, 정렬, 재귀, 백트래킹, 그리디, 이분 탐색, dp, bfs, dfs, 다익스트라, 벨만 포드, 투 포인터 등
③ CS(Computer Science) 지식 습득
CS 지식은 좋은 개발자가 되기 위한 필수 요건이기 때문에 취업 면접 질문에서 CS 지식을 많이 물어볼 수 밖에 없다.
개발이란게 결국 운영되는 환경이 컴퓨터로 이루어지고 네트워크를 통해 컴퓨터간 상호작용이 이루어지며 사용자들에게 입력받은 데이터를 데이터베이스에 저장을 하기 때문이다.
나는 아직 CS 에 대한 이해가 거의 노베이스 상태여서 다음 CS 리스트들을 익히고 내것으로 만들어야 할 목표가 있다.
- 컴퓨터 프로그래밍
- 객체 지향 프로그래밍
- 컴퓨터 네트워크
- 데이터 베이스
- 소프트웨어 공학
- 정보 보안
- 컴퓨터 논리 개론
- 컴퓨터 구조
- 운영체제
- 데이터 분석
④ 프로젝트 준비
제로베이스 스쿨 5개월, 6개월차에 있을 개인 / 팀 프로젝트에 대비하기 위한 계획을 수립해야겠다.
또, 이 뿐만아니라 개인적으로 토이프로젝트도 한번 구상을 해보는 시간을 가지러한다.