소프트웨어 마에스트로

SW 마에스트로 14기 합격 후기

자바지기 2023. 3. 23. 19:43
반응형

 

올해는 소프트웨어 마에스트로 14기 과정을 진행하게 되었다.

두 달이 넘는 기간 동안 준비했기 때문에 합격 소식에 많이 기뻤다.

 

지원 이유

처음 지원하게된 이유는 지원금 때문이었다. 12월 한 달 동안 생활비 마련을 위한 다양한 알바를 하면서, 학습하는데 시간 투자를 못했다.

소마에서 지원해주는 지원금을 통해 학습에만 몰입할 수 있는 환경을 만들고 싶었다.

작년에 우테코에서 학습에만 몰입할 수 있는 환경을 경험했기때문에, 또 다시 경험하고 싶었다.

지원 과정에서는 소마에서 다양한 기술을 경험해봐야겠다는 생각이 들었다.

우테코라는 좋은 교육 기관에서 성장을 했지만, 너무 우테코의 방식대로만 성장한 것 같았다. 

돌이켜보면 개발 학습을 진행하는 동안 자바, 스프링, jpa를 이용하여 객체지향적인 코드를 작성하는 방법에 대해서만 학습했다.

더 기술적으로 많이 경험해보고 성장해야겠다는 욕심이 생겼다.

 

지원 과정

소마는 1차, 2차 알고리즘 코테가 있고, 3차로 면접 과정이 존재한다.

 

1차, 2차 코테는 5문제씩 출제되었다.

나는 5문제 중, 2문제씩밖에 못풀었다. 쉬운 문제인 1번과 sql 문제인 5번만 풀었다.

백엔드 개발자기 때문에 sql 문제는 무조건 맞혀야한다고 생각이 들었다. 따라서 코테 준비 기간동안 프로그래머스 sql 고득점 kit을 3번씩은 푼 것 같다.

그리고 백준에서 제공하는 문제를 200개 정도 풀었던 것 같다. 골드3에서 골드1로 티어가 변경될 정도 풀었다.

알고리즘 문제에 대해서 많이 대비를 했다고 생각했지만, 소마 코테의 난이도가 높았기때문에 1번을 제외하고는 건들지도 못했다.

물론 시험의 압박감에서 벗어난 뒤에는 해결할 수 있는 정도의 난이도였다.

1, 2차에서 2문제 밖에 못풀어서 떨어질 줄 알았지만, 그 2문제가 확실하게 맞았기 때문에 합격할 수 있었다.

 

3차 면접을 진행하기전에는 면접 스터디를 진행했다.

소마 면접은 인성 질문이 많기 때문에, 그 부분을 철저하게 대비할 수 있었다.

스터디를 같이 하시는 분들과 함께 답변에 대한 서로의 생각을 공유하며, 다양한 답변에 대비할 수 있었다.

 

면접은 5 대 5로 진행되었다. 면접을 시작하고 3분 자기소개를 해야하는 시간이 있었다.

나는 이 발표에서 우테코, 프로젝트에 대해 집중하여 발표를 했다.

 

포트폴리오 형식은 소마에서 지정해주었지만, 조금 변형해서 작성하였다.

취업을 위한 포트폴리오가 아니기때문에 학습, 성장 경험에 조금 더 초점을 두고 작성하였다.

 

면접에서 받은 공통 질문 목록

1. 팀원이 나간다면 어떻게 할 것 인지?

  • 팀원 3명 중, 1명이 나갔다면?
  • 팀원이 나밖에 안남았다면?
  • 프로젝트 진행이 80%정도 된 상황에서 팀원이 나갔다면?

나는 세 번째 질문을 받았다.

질문에 대한 답변으로, 혹시 외부에서 개발자 데리고 오는게 허용되냐고 물었지만 안된다는 답변을 받았다.

이후 요구 사항을 줄이고, 남아있는 팀원과 나간 팀원의 몫을 적절하게 분배하며 진행할 것이다 라고 했지만

80%나 진행했는데 요구사항을 줄일건가요? 라는 답변을 받았다.

대답마다 안된다고 해서 좀 당황했다. 그래서 대충 나간 팀원이 프로젝트 참여는 못해도 도움을 줄 수는 있기때문에 그에게 도움을 받아가면서 진행할 것이다 라고 얼버무렸다.

 

 

2. 세상을 긍정적으로 바꾼 SW 발전은 무엇인가?

 

이에 대한 답변으로 인터넷을 준비했는데, 앞사람이 먼저 인터넷을 말해버렸다. 

너무 당황해서 뜬금없이 당근마켓이 생각나서 당근마켓을 말해야겠다고 생각이 들었다.

그런데 내 차례가 오자 당근마켓이 너무 뜬금없어서 마이너스가 될 것 같았다.

그래서 그냥 잘 생각나지 않는다고 하고 넘어갔다.

 

3. 팀에서 어떤 역할을 맡을 것인가?

내 앞 차례 지원자분들은 각자 자기의 개발 분야에서 개발을 열심히 하겠다 라는 답변을 하였다.

이 질문에 대한 답변들을 들으면서, 각자의 개발 분야를 궁금해하는게 아닐텐데.. 라는 생각이 들었다.

그래서 나는 나의 장점인 계획적인 성격과 유쾌한 성격을 이용해서 팀이 효율적으로 프로젝트를 진행할 수 있도록 도움을 주는 역할, 그리고 팀의 유쾌한 분위기를 조성하는 역할을 할 것이라고 했다. 물론 앞 사람들의 답변이 더 옳은 답변일 수도 있다.

 

4. 클린코드를 위해서 본인이 하고 있는 노력

이 질문을 듣고 바로 생각난 것이 소나 큐브와 소나 린트를 사용하여 코드 정적 분석을 했던 경험이었다.

이것들을 사용하여 코드의 중복을 줄이고 예상치 못한 예외를 잡고있다고 답변하였다.

추가로 우테코에서 다양한 미션을 진행하고 현직자들의 코드리뷰를 통해 클린코드를 학습한 경험이 있다고 답변하였다.

 

시간이 지나고 이 답변에 팀원들과 코드리뷰를 통해 깔끔한 코드를 작성하려고 노력했다 라는 말을 추가로 했으면 좋았겠다 라고 생각이 들었다.

 

5. 본인이 사용하는 언어의 답답한 점

이 질문을 받고, 머리가 멍해졌다.

답변을 생각하는 동안, 지원자의 수준에서 사용하는 언어의 답답함을 느꼈다는 것은 본인의 역량 부족이 아닐까 생각이 들었다.

언어의 답답함을 느낄정도로 깊게 언어를 사용하는 사람이 있을까? 그냥 본인이 몰라서 답답해하는게 아닐까? 생각이 들었다.

따라서 나는 자바를 사용하여 알고리즘을 풀 때, 문제 풀이 로직 이외에 작성해야할 것들이 많아서 답답함을 느꼈다 라고 답변하였다.

지금 생각해보면 많이 생각하지 않고 답변한 것 같다.

그런데 이후 추가적으로 본인이 답답한 점을 해결하기위해 어떤 노력을 했는지? 라는 질문이 들어왔다.

난 그냥 답답해서 파이썬으로 알고리즘 문제 푸는데.. 

딱히 해결한 방법은 없어서 파이썬으로 알고리즘 문제를 풀고있다고 답변하였다.

 

면접에서 받은 개인 질문 목록

1. 한 문제를 오래 풀었지만, 문제 풀이 결과가 엉망이다. 이에 대한 의견

못 푼 문제 중, 오래 풀었지만 풀이가 엉성한 문제가 있었다.

사실 알고리즘 문제를 못 풀었다는 건 역량 부족 말고 다른 이유는 없을 것 같다.

따라서 문제를 오래 풀었지만 문제를 올바른 방향으로 접근하지 못해서 못 풀었다 라는 정도의 짧은 변명을 하였다.

 

2. 1번 문제를 정규표현식을 이용하여 깔끔하게 작성했는데, 평소에 개발할 때 정규표현식을 자주 사용하는가?

이에 대해 평소에 정규표현식을 잘 사용하지 않지만, 코딩 테스트 대비를 위해 정규 표현식을 공부하여 쉽게 풀 수 있었다고 답변하였다.

 

3. 객체지향 5원칙

이건 물어볼 것 같아서 전날에 암기했고, 암기한 그대로를 읊었다. 운이 좋았다.

 

4. 테스트를 작성할 때 메소드 명을 한글로 작성하는데 이에 대한 이유?

원래는 영어로 작성하고 @DisplayName에 한글로 적는 방식으로 진행했는데, 진행을 하면서 영어로 작성해야하는 메소드 명을 고민하는 시간이 아까웠고, 테스트 코드는 협업 과정에서 문서의 역할도 하기 때문에 다른 사람의 작업 기록을 더 쉽게 알아보기 위해서 한글로 작성하였다고 대답했다.

 

몇가지 질문을 더 받았지만 기억이 안난다.

 

 

앞으로 계획

소마에서 좋은 사람들과 함께 성장하고 싶다. 이전에 접해보지 못한 다양한 기술을 경험하고 싶다.

창업에 대한 지식을 얻고, 창업에 도전할 수 있는 개발자가 되고 싶다.

내가 기대하는만큼 성장하지 못할 수도 있다. 기대하는만큼 성장하기위해 끊임없이 노력할 것이다.

올 한해 재밌게 보낼 예정

 

반응형