코테를 준비하면서 시험기간과 겹쳤다.
우선 시험이 중요하니, 중간고사에 집중했다.
그러다 보니까 코테에 신경을 쓰지 못했다.
나는 개발자 인스타그램을 하고 있는데, 거기서 도움을 주시는 우택님께서 코테 준비에 조언을 해주셨다.
나는 전반적으로 코테를 어떻게 준비해야하는가?에 대한 불안감과 조급함이 있었다.
언어를 파이썬을 하지만, 내가 원하는 기업과 직무와의 적합성도 솔직히 파이썬과 거리가 멀어서 언어 선택에도 고민이 있었다.
나는 모빌리티나 플랫폼 서비스의 백엔드를 하고 싶다.
백엔드는 주로 자바를 쓰기 때문에 자바에 대한 이해도가 높아야한다.
그리고 내가 목표로 하는 기업 중 일부 (배민, 현차)는 백엔드 코테시 파이썬을 보지 않는다.
또한 자료구조랑 알고리즘을 난 1학년 말, 2학년 초에 배운 터라 일부 내용을 까먹은 상태이다.
나는 '내가 남에게 설명할 줄 알아야' 내 지식이라고 생각하는데, 이에 부합하지 않음을 의미한다.
또한 백준, 프로그래머스를 풀어야 하는데, 자료구조랑 알고리즘을 까먹은 상태에서 냅다 푸는게 맞는건가?
뭐부터 풀어야 하는건가?
에 대한 전반적인 고민이 있었다.
이에 대해 조언을 구했다.
어짜피 자료구조랑 알고리즘은 면접에서 나옴
→ 내용이 많지 않다.
하루에 하나씩만 해도 한달에 끝낼 수 있다.
이론 공부를 하면서 코테 준비를 해라
그런 다음에 그걸 사용할 줄 아는 상태가 되어라
→ 구글링을 적극 활용해 공부해라
실제로 코테를 볼 때 개념을 알고 있되, 실제로 쓰는 방법은 언어에 따라 달라진다
우택님이 파이썬에서 자바로 넘어온 것의 큰 이유 : 채용 때문
배민, 토스 등 백엔드 직무 코테에서 자바만 보는 기업이 많아지는 추세이다.
-> 자바로 한번 해보는 것을 강추하심
백준 - 단계별로 다 풀기 : (우택님은 브루트 포스까지 푸셨음)
더보기 > 알고리즘 기초 >
https://code.plus/course/41
그런다음에
solved.ac
스터디는 싸피 가서 했다
자격증은 그닥 필요가 없다.
있으면 좋고 아님 말고가 자격증.
오픽은 강추 !
네카라쿠배 : 전공자는 자격증이 있어도 안쳐준다. 학점도 안본다.
포트폴리오가 제일 중요하다.
영양가가 없는 포트폴리오 → 단순한 CRUD 찍어내는 포트폴리오가 아니라
영양가가 있는 포트폴리오 → 기술 스택에 대한 고민하는 과정이 많은 포트폴리오
포트폴리오 만든거 : 노션
양보다 질
거기서 내가 어떤걸 얻었느냐
정말 필요한거랑 기억에 안나는거 다 버리기
항상 자기 전에 회고록을 쓴다.
주로 개발 관련해서도 쓰고, 일상에 관련된 것도 쓴다.
일단 문제를 정확하게 이해하는게 중요하다.
주석으로 적든 종이로 적든해서 구현 과정을 다 그려본다.
문제를 읽으면서 필요한거를 함수 짜기 전에 주석으로 적어본다.
그리고 그 구현해야 하는 거를 함수로 뽑아낸다.
딱 그러면 그 과정만 생각하게 되서 좋다.
이렇게 하면 디버깅 하기가 쉬워진다.
한 메소드를 먼저 짜고
확인하고
그 다음 메소드를 먼저 짜고
그런식으로 짜보면 더이상 오류날게 없다
차근차근히 디버깅하면서 코드를 짜면 된다.
가장 연습 많이 필요한거 → 시간 복잡도 계산
이게 보여야 한다.
만약에 완탐으로 풀면 최악의 경우 n*m이니까
계산을 하면서 1초 제한이면 완탐말고 다른 방법으로 풀어야겠다 그런거 생각하기
이진탐색이라던가 힙을 쓰던가
알고리즘을 다 생각하고 풀어야 한다.
대표적인 시간 복잡도는 공부하고 들어가는게 좋다.
그런거 생각하면서 문제에 접근해야한다.
실제로 코테 들어가면 테케 일부만 보여주고 그냥 제출 → 최악의 경우를 때려버리는 히든 케이스 존재 → 그거 맞춰야지 된다.
시간 복잡도 계산하는 연습 많이 해라
풀고 바로 제출하기 누르지 말고 한번더 확인하기 → 내가 제대로 했는지, 문제에서 요구한 조건을 다 만족을 했나
한번에 맞춰야 하는게 중요하기 때문에 꼼꼼하게 확인을 하기
특히 대소문자 그런거 사소한거 신경쓰기
헷갈리면 찍어보기
다 짜고 나서도 다른 사람 풀이 보면서 괜찮은 코드 있나 확인 하기
코드들이 보통 정형화가 많이 되어 있다
→ 정리해두면 나중에 복기하기 좋다.
기업마다 선호하는 알고리즘이 있다. 그런거 맞춰서 준비하는 편
하면서 CS 공부 틈틈히 하는게 좋다.