회고/WIL

[ WIL ] 3-4 원티드 커리어 킥오프, 코딩테스트, 기업 지원

KEEMSY 2024. 3. 23. 21:55

벌써 곧 4월이다. 이젠 날짜뿐만아니라 날씨도 점점 겨울이 가고 봄이 오는 것 같다. 라고 생각했으나, 꽃샘추위에 얼어 죽을뻔한 3-4주차였다. 추운날씨에도 매일 알고리즘 문제를 풀이하고, 이력서를 수정하고, 자기소개서를 작성하고, 지원하기를 반복했다. 이래서 그런지 생각만 했을 때는 이번 한주는 특별한 이벤트가 많이 없고 정신만 없었던 것 같은데, 정리해보니 마냥 그런것 같지는 않다.(다행이다.)
 

이번주의 큰 이벤트: 원티드 커리어 킥오프 시작, 예비군, 기업지원, 코딩테스트 

 

벌써 6년차 예비군이다.. 올해만 하면 예비군 끝이라니!

 
24.03.20.(수) 에는 예비군을 다녀왔는데 벌써 내가 6년차 예비군이라고한다. 예비군을 다닌지 6년차인데 생각해보면, 예비군은 하나도 변한게 없는 것 같아 아쉽기만하다. 개인적으로 정말 무의미한 대기시간.. 비효율적인 과업진행.. 예비군을 갈 때면, 시간이 많이 아까웠다. 오해는 하지 않길, 나 사실 예비군 훈련 좋아한다.. 시가지전투 내 최애다..사격 짜릿하다.. 하지만 예비군 전체 훈련 시간 중 버리는 시간이 너무 많았던 것 같다.
 

구성
- 원티드 커리어 킥오프 시작
- 코딩 테스트
- 기업 지원

 


원티드 커리어 킥오프

 

원티드 커리어 킥오프 2024 Spring 안내 페이지

 
이번주에는 신청했던 커리어 킥오프 교육이 시작됬다. 내용의 핵심은 현재의 취업시장과 관련하여 전략적으로 취업 준비를 할지에 관한 내용이었다. 해당 내용을 첨부할순 없지만, 개인적으로 굉장히 많이 유용한 세션이었다. 냉정히 현재 취업시장을 분석하고 이를 어떻게 전략적으로 준비해야하는지에 대한 내용은 내게 반드시 필요했기 때문이다.
 
특히, 프리 미션, 단계 별 미션을 통해, 단계별로 나아갈 수 있도록 만들어주는 것이 좋았다. 5천원에 이런 교육과 가이드를 받아볼 수 있어 좋았고, 이를 적극 활용해서 취업까지 화이팅 해봐야겠다.


나의 취업 준비

현재 취업시장이 빙하기인 사실은 누구나 다 안다. 특히 신입 개발자의 포지션은 포화 그 이상이다. 1~2명을 뽑는 포지션의 경쟁률을 수백대 일 을 넘어서는 경우가 허다하며, 지원 시 서류 확인조차 안되는 경험을 빈번히 해볼 수 있었다.  이에 반드시 전략이 필요할 것이라고 생각을 했다.

  • 최신순으로 빠르게 지원하기
  • 구체적인 수치화를 작성하기

 

나의 기업지원 전략 1. 최신순으로 빠르게 지원하기

수 많은 이력서들 중 내 이력서를 보게 만들 방법은 단 하나였다. 다른 지원자보다 먼저 지원하는 것  이것만큼 확실하게 내 이력서를 볼 수 있게 하는 방법은 없다고 생각했다. 그래서 나는 최신순으로 기업을 조회하고 지원했다. 이는 분명히 효과가 있었다. 하지만 서류가 넘어가는 일은 많지 않았다. 그렇다. 문제는 내 이력서가 문제였다.
 

나의 기업지원 전략 2. 구체적인 수체화를 작성하기

내 이력서의 문제가 있다고 판단한 이후, 나는 "이력서를 어떻게 개선해야할까?" 많은 고민을 했다. 그리고 가장 객관적으로 어필 할 수 있도록 개선해야겠다 생각을 했고,이력서에 객관성을 부여해야겠다고 생각했다.
 

내 이력서의 프로젝트의 일부분. 문제성을 인지했고, 해당 문제를 EDA를 통해 해결했다. 근데 어딘가 모잘라 보인다..

 
가장 객관적인 요소는 뭘까? 나는 결과물이라고 생각했다.하지만 그냥 결과물은 매력이 없다. 타당한 결과물이 필요하다. 내가 생각하는 타당한 결과물은 다른 사람들도 납득할 수 있는 결과물이다. 그리고 결과물에 타당성을 부여할 때, 수치만큼 좋은 수단이 없다 판단했다.
 
수치화, 업무를 진행하면서, 그리고 이력서와 포트폴리오를 작성할 때 많이 들어보는 단어이다. 하지만 수치화는 내게 너무나도 어려웠다. 
 
수치화가 어려운 이유는 이것이 아닐가 싶다. 적어도 나는 그렇다.

  • 무엇을 수치로 나타낼 수 있는가?    글쎄...?
  • 어떻게 수치로 나타 낼 수 있는가?   그....글쎄..?

 
나는 지금까지 대부분 수치화를 하지 않았고, 결과물을 기록했다. 나는 무엇을 수치화 할 수 있을지, 어떤것을 수치화할지에 대한 고민을 하지 않았기 때문인 것 같다. 나는 목표에만 집중하고, 결과물만 만들었다. 그리고 이 결과물에 대해서는 스스로 혹은 타인에 의한 피드백을 진행하지 않았다.

그래도 수치화를 기록한 것도 있다. 전/후 비교가 가능한 경우 혹은 이건 수치화해야겠다.(개인적으로 떠오른 내용)인 경우이다. 그냥 내가 어떤 것을 수치화 해야할지 몰랐다고 또 해당 내용을 고민하지 않았다.

 
 
없는 것을 만들어서 할 순 없다.(이건 사기니깐..) 그래서 나는 수치로 표현 할 수 있는 것들을 하나씩 찾아가며 정리를 해보았다. 진짜 없었지만, 그래도 열심히 기록해둔 내용 덕에 몇몇 정보를 찾아서 기존의 내용을 일부분 개선할 수 있었다.
 

아직 이력서에 반영하지는 않고, 개선해야할 항목 페이지에 정리된 내용이다.

 
이것이 정답이 될 순 없겠지만, 수치를 통해 주문 시스템의 개선에 대한 근거를 확보했다 생각한다. 

실제 내가 테스트한 설정
나는 JMeter를 사용하여 스트레스 테스트를 진행했다. "잘못된 스트레스 테스트이진 않을까?" 하는 고민이 되어 이력서와는 멀어진 내용이었는데, 해당 고민에대한 답은 진행 하는 사람이 판단하는 게 맞다는 생각이 들었다. 나는 이 테스트가 맞다 생각하고, 해당 내용을 추가했다.

 

 
 

나의 취업전략 N. 추가적인 내용들..

나의 취업전략 1,2 는 이번 커리어 킥오프를 수강하기 전에 고민한 내용들이다. 그리고 이번 과정을 진행하면서 추가적으로 내가 계속해서 고민하고 개선해 나가야할 부분들에 대한 아이디어가 많이 떠올랐다.

  • 내가 담당자라면 JD를 쓸때 어떤 고민을 했을까? 그래서 어떤 인재를 기대할까?
  • 이력서를 보고서 잠깐 멈추게 할 수 있는 내용이 뭘까? 

 
이번 커리어 킥오프를 잘 신청한 것 같다. 많은 정보를 얻고서 또 적용하여 좋은 취업을 할 수 있도록 최선을 다해야겠다. 그리고 앞으로는 수치화.. 객관성 염두한 생각.. 잘해보자!


코딩 테스트

이번 한주는 거진 코딩 테스트 준비로 시작해서 코딩 테스트로 끝났다해도 과언이 아니다. 매일 매일 꾸준히 문제를 풀고, 또 시험을 준비했다. 그리고 이번 한주를 보내며 코딩 테스트와 관련된 내 자신을 리뷰해보려고 한다.
 


나의 상태 

사용 언어

내가 개발에 사용할 수 있는 언어는 파이썬, 자바, 코틀린이다. 개발에 사용할 수 있는 기준이 중요한데, 나는 내 아이디어를 해당 언어로표현할수 있고, 문법을 실수 할수 있으나 알고 있는 정도를 의미한다.
 
나는 다시 코딩테스트 준비를 하면서, 코틀린으로 준비를 했다. 조금은 아이러니하게도 취업은 파이썬 혹은 자바를 활용한 서버 개발을 준비했지만, 코틀린으로 알고리즘 문제를 풀이했다. 

자바가 아닌 코틀린으로 시작했던 이유는, 첫번째로 나는 코프링을 하는 회사에 지원하고 싶지만 코프링 프로젝트가 없다. 그럼에도 불구하고 코틀린에 대한 개발 역량을 어필하면서 코딩 테스트를 준비하고자(1타2피) 코틀린으로 시작했다.

 
 
하지만 글을 쓰는 현 시점, 다시 파이썬을 통해 알고리즘 문제를 풀이하고 있다. 그 이유는 내가 생각하는 코딩 테스트의 목적과 소프트웨어 개발의 목적이 다르다고생각하기 때문이다. 즉, 코딩테스트와 소프트웨어 개발에서 언어는 중요하지 않다 생각이 들었다.

코딩테스트의 목적은 문제 해결을 위한 개발 역량을 확인하는 것이라고 생각한다. 그리고 소프트웨어 개발의 목적은 서비스의 제공이라 생각한다.

 

문제 풀이 수준

나는 백준, 프로그래머스 플랫폼을 활용하여 문제풀이를 하고 있다. 그리고 내가 풀이해본 문제들은 실버 ~ 골드, 레벌 2~3 이다.
하지만 이곳에는 함정이 있다. 꾸준히 알고리즘 문제를 풀이하지 않았다는 것이다. 그래서 다시 유형별로 풀어보고 있다. 그리하여 현재 수준은 실버4 ~ 골드5, 레벨 2 수준정도 인듯하다. 그리고 이는 초보레벨이라고 보는게 맞을 것 같다.
 
 

프로그래머스의 코딩테스트 고득점 Kit, 과거 해당 문제를 답을 참고해서라도 다 풀었었다.

 
조금 더 구체적으로 이야기를 한다면, 스택, 큐, 해쉬 와 같은 자료구조를 이해하고 응용할 수 있으나, 알고리즘에 사용되는 다양한 알고리즘을 알지못하고(이름은 안다. 이름만인게 문제다..) 풀어보지 못한 문제의 유형은 풀이하지 못한다.(ex DP, 그래프, 이진탐색) 그리고 과거에 풀이를 해봤던, 최소한 정답을 봤던 문제들에 대해서 전부 다 풀이를 하지 못하더라.(허허..)
 
과거 풀었던 문제들부터 다시 상기하고자, 프로그래머스 계정을 새로 생성하고, "코딩테스트 고득점 Kit" 유형을 다시 정복해나가고 있다. 아 물론 기존의 백준은 함께 하면서 말이다.

다음주까지는 모든 문제 유형을 최소한번은 복습하는것을 목표로 해보았는데 목표 달성을 위해서는 정말 열심히 또 꾸준히 해야할 듯 하다.
 
 


앞으로 해야할 사항

개선해야 할 사항

문제 풀이 + 코딩테스트를 진행하며 식별한 개선사항들을 식별했고, 잊지 않기 위해 정리해보았다.

  • 대충(?) 설계하고 코드 작성하기
  • 시간복잡도를 고려하지 않고 알고리즘 구현하기
  • 아이디어면 충분하다는 생각

 
대충 설계하는 것은, 아이디어에서 손코딩으로 풀이를해보지 않고, 대충 이정도면 되겠지 하는 생각으로 코딩을 시작하는 것을 말한다. 이게 아이디어가 정확해서 한번에 제대로 풀이한다면 좋으나.. 그렇지 않은 경우가 많고 치명적인 문제가 되기에 반드시 개선해야 하는 부분이라 생각이 들었다.
 
대충 설계하는 것과 관련된 부분인데, 대충 설계하다보니, (돌이켜보면)시간복잡도 측면에 대한 고려가 많이 부족한 경우가 많았다. 오늘 진행한 코딩테스트에대해서 회고를 해보니, 입력값을 고려한 최적의 풀이었는가? 에 대한 질문을 했을 때  테스트 케이스는 통과했음에도 나는 그렇다는 말을 할 수 없었다. 누구나 알고있듯이 효율성 검사까지 통과를 해야 맞춘 것인데, 이번 코딩테스트에서는 이런 생각을 깊고 진지하게 하지 못했다. 그래서 앞으로는 효율성을 고려한 알고리즘 설계를 하는 것이 반드시 필요하다 생각한다.
 
마지막 아이디어면 충분하다는 생각은, 최근 AI의 발전으로, 아이디어만 있다면 구현은 문제가 되지 않을 것이라 생각했다. 내가 생각하는 구현은 어떤 알고리즘과 라이브러리를 사용하는지에 대한 부분이다. 당연히 세부사항은 내가 다시 다듬어야겠지만 이정도의 활용은 가능할 것 이라고 생각했다. 하지만 코딩테스트에서는 생성형 AI를 사용하는것은 대부분 금지사항이었다. 어찌보면 당연한 것인데, 내가 당연하게 사용홰왔다보니 놓친 부분이었다. 기억에 의존해서 사용하는 라이브러리를  Import 할 때 진짜 어질어질했다.. 어떤 상태에서도 알고리즘 문제풀이를 할 수 있어야한다는 것이 처음 시작할 때 배운 내용인데, 다시 정신차리고 AI가 아닌 진짜 온전히 나혼자서 할 수 있도록 해야겠다.


기업 지원

 
지난주부터 계속해서 이번주도 기업을 지원하고 있다. 아직 코딩 테스트를 좀 더 중심적으로 준비하다보니, 많은 기업들을 지원하지 못했는데, 다음주에는 이번주보다는 더 많은 기업을 지원하고 도전해보려고한다. 준비한 계획처럼 잘 준비해서, 이전보다는 좋은 결과를 얻을 수 있기를 기대해본다.

728x90