[면접 후기] 2021년 하반기 네이버 신입 공채 : 기술 직군 1차 면접 후기 (불합격)

취업 과정|2021. 11. 29. 17:46
728x90

지난 2021년 10월 9일에 본 네이버 코딩 테스트 결과 이후 10월 29일에 1차 면접 진행 안내 메일이 왔다.

 

코테 당시 4문제 중 2문제를 풀었고 5분이 모자라서 1문제를 풀지 못하였기에 아마 떨어질 것이라 생각했는데

공채 단톡방을 보니 3문제 푼 사람은 합격, 2문제 푼사람은 자소서로 합불이 나눠진 듯했다.

 

코테 결과 화면

 

해당 메일에서 확인해야 할 점은 3가지였다.

 

첫째, 면접은 zoom을 활용한 온라인 화상 면접으로 진행된다는 것

둘째, 면접 키트 배송지를 적는 것

셋째, 기업 문화 적합도 검증을 해야 된다는 것

 

면접에 대한 자세한 일정은 차주에 다시 메일을 보낸다 하였다.

 

면접 키트는 네이버 웹툰, 시리즈에서 사용 가능한 쿠키 100개, audioclip에서 사용 가능한 오디오북 1권 무료 대여 쿠폰, vibe 무제한 듣기 1개월 사용권 묶음과 디지털 노트에 적으면 그대로 화면에 출력되는 스마트 볼펜이었다.

 

처음 스마트 볼펜을 테스트할 때 아무 종이에다 적어도 되는지 해봤는데 스마트 페이퍼에만 작동되는 거로 봐선 스마트 페이퍼에 눈에 보이지 않는 특정 좌표나 정보가 들어있는 듯했다.

 

(두근두근)

 

원래 긴장을 하지 않는 편이지만 IT 대기업이라 그런지 면접 대기실부터 슬슬 긴장되더니 이동하고 면접관님들을 보니까 엄청 긴장하게 되었다.

 

면접관님들은 총 3분이셨으며 긴장을 풀어주셨지만 사람 마음이 마음대로 되진 않더라......

 

면접진행 방식은 자소서에 대한 질문과 창의적 수리를 풀어나가는 것이었다.

 

사실 그동안 프로젝트를 진행하면서 시간에 쫓겨서 기능 구현에 치중하느라 디테일한 생각은 하지 못했는데 꼬리 질문이 들어오자 확실히 면접이 어렵다는 느낌을 받았다.

 

개인 프로젝트를 진행하면서 보완해야겠다는 생각을 했는데 특정 요소를 어떻게, 왜 사용했는지, 장단점은 무엇인지에 대한 고민을 많이 해야겠단 반성을 했다.

 

미처 생각하지도 못한 질문이 들어와서 그 순간부터 머리가 백지가 되었다.

 

그렇게 자소서에 대한 질문이 끝나면 면접 키트에 포함된 스마트 펜을 이용해서 창의적 수리 문제를 풀고 손 코딩도 하게된다.

 

원래 언어를 Python을 사용하고 자동 완성 도구를 사용하지 않아서 손 코딩도 자신 있었지만 이미 자소서 질문에서 멘탈이 승천해버린 나머지 쉽게 생각할 수 있는 것도 떠오르지 않았다....

 

면접관님께서 수도코드로 작성해도 된다고 하셨으니 다른 분들은 아마 언어에 대한 걱정은 크게 안해도 될 것 같다.

 

역시 멘탈 관리와 치밀한 면접 준비가 필수인 것 같다.

 

대신 면접관님들도 막히는 부분에서 쉽게 풀 수 있도록 힌트를 주는거로 봐선 지원자가 문제를 풀 수 있는지를 보는게 아니라 문제를 해결하는 과정을 주로 보시는 것 같았다.

 

실무 경험이 없는 신입이 입사하면 배우면서 문제를 해결해야 하기 때문에 면접 과정을 통해 얼마나 회사에 적응할 수 있는지 판단하는 평가란 느낌을 받았고 그로 인해 아쉬움이 더 크게 남는 면접이었다.

 

탈락할 것이라 생각하고 맘 버리고 있던 어느날 메일이 왔다.

 

면접 결과 화면
면접 결과

 

역시 예상은 벗어난 적이 없었다.

 

그만큼 내가 부족한 부분이 있었으니 개인 프로젝트로 보완하여 다시 도전해야겠다.

728x90

댓글()

[BOJ] Python 백준 23740번 버스 노선 개편하기 골드 5

728x90

https://www.acmicpc.net/problem/23740

 

23740번: 버스 노선 개편하기

서강 나라에서는 일직선 도로를 따라 $N$개의 버스 노선을 운영 중이다. 필요할 때마다 노선을 새로 만든 탓에 겹치거나 중복되는 노선이 많다. 복잡한 버스 노선에 지친 시민들을 위해 버스 노

www.acmicpc.net

문제 풀이


눈여겨봐야 할 점은 3가지다.

 

  1. 버스 노선의 개수인 N은 20만 이하이다.
  2. 한 점 이상에서 겹쳐지면 연장 가능한 노선이다.
  3. 개편된 노선의 요금은 개편할 때 사용된 노선의 최소 요금을 적용한다.

 

문제와 그림을 보고 바로 떠오른 생각은 노선의 정보를 오름차순으로 정렬한 뒤 개편된 노선과 겹친다면 포함하는 노선, 겹치는 부분이 없다면 새로운 개편된 노선으로 판단하는 방식이다.

 

이 방식대로 연산하면 Sort를 이용하여 정렬할 때 O(nlogn), 오름차순 된 노선 정보를 처음부터 훑을 때 O(n)으로 총 O(nlogn)의 시간 복잡도가 걸린다고 생각했다.

 

따라서 소스 코드는 다음과 같다.

 

n=int(input())
bus=[]
res=[]
for i in range(n):
    bus.append(list(map(int,input().split())))
bus.sort(key=lambda x:(x[0],x[1]))
check=True
for i in bus:
    if check:
        res.append(i)
        check=False
    else:
        if i[0]<=res[len(res)-1][1]:
            if i[1]>res[len(res)-1][1]:
                res[len(res)-1][1]=i[1]
            if res[len(res)-1][2]>i[2]:
                res[len(res)-1][2]=i[2]
        else:
            res.append(i)
print(len(res))
for i in res:
    print(i[0],i[1],i[2])

 

bus는 기존 노선 정보를 저장하고 res는 개편된 노선 정보를 저장할 리스트이다.

 

6번째 줄에서 lambda를 키로 이용하여 0번째 원소, 1번째 원소를 기준으로 오름차순 정렬한다는 뜻이다.

 

check 변수를 통해 첫 노선을 개편된 노선으로 잡았고 겹치는 부분이 있을 경우로 나눠 14번째 if문은 현재 노선 정보가 개편된 노선보다 길어서 연장해야 될 때, 16번째 if문은 최소 요금으로 갱신하는 문장이다.

 

또한 겹치는 부분이 없으면 기존 노선을 개편된 노선으로 추가한다.

 

한 줄씩 원리를 따라가 보면 쉽게 이해할 수 있을 것이다.

 

결과 화면
결과 화면

 

Python으로 제출하면 시간 초과가 뜨길래 PyPy로 제출했더니 통과했다.

 

PyPy는 한 줄씩 해석하는 인터프리터 방식인 Python의 느린 동작에서 컴파일 방식을 개선하여 나온 언어로 상당히 빠른 수행 속도가 특징이다.

 

따라서 동일한 문법이기에 애초에 시간 복잡도를 비효율적으로 작성한 경우가 아니라면 Python으론 시간 초과 뜨는 코드가 PyPy로 통과하는 경우가 많다.

 

즉 올바르게 작성한 것 같은데 시간 초과가 뜬다면 PyPy로 제출하길 추천한다.

728x90

댓글()

[BOJ] Python 백준 23738번 Ресторан 브론즈 2

728x90

https://www.acmicpc.net/contest/problem/725/1

 

A번: Ресторан

최대 $100$글자의 단어가 주어진다. 모든 글자는 영어 대문자 A, B, E, K, M, H, O, P, C, T, Y, X 중 하나로 이루어져 있다. 입력이 러시아어 대문자로 주어지지 않음에 주의하자.

www.acmicpc.net

문제 풀이


눈여겨봐야 할 조건은 3가지다.

 

  1. 보이는 대로 읽어야 할 알파벳과 다르게 읽어야 할 알파벳이 구분되어있다.
  2. 최대 100글자의 단어가 주어진다.
  3. 영어 소문자로 나타내 출력해야 한다.

다르게 읽어야 할 알파벳은 다음과 같다.

B->v, E->ye, H->n, P->r, C->s, Y->u, X->h

해당 부분은 파이썬의 딕셔너리(Dictionary)를 사용하면 쉽게 치환 가능하다.

 

최대 100글자이므로 시간 복잡도는 고려할 필요가 없을 정도로 Input Size가 작다.

 

입력이 대문자로 들어오고 출력은 소문자로 해야 하므로 보이는 대로 읽어야 할 알파벳은 소문자로 치환시켜야 된다.

 

다음은 전체 코드이다.

 

word=input()
russ={"B":"v","E":"ye","H":"n","P":"r","C":"s","Y":"u","X":"h"}
res=""
for i in word:
    if i in russ:
        res+=russ[i]
    else:
        res+=i.lower()
print(res)

 

먼저 russ란 딕셔너리에 치환해야 될 알파벳들을 넣어 놓고 Input 문자열을 하나씩 반복한다.

 

만약 딕셔너리에 있는 문자라면 해당 값을 res에 이어 붙이고 없는 문자라면 lower() 함수를 이용하여 대문자를 소문자로 치환한 다음 이어 붙인다.

 

완성된 문자열을 출력하면 정답이다.

 

결과 화면
결과 화면

 

파이썬의 딕셔너리를 사용해야겠다는 생각만 떠올리면 복잡한 인덱싱 과정도 필요 없기에 쉽게 풀 수 있는 문제였다.

728x90

댓글()

[PDF 전자책] 쉽게 풀어쓴 자료구조와 알고리즘 기본 가이드

728x90

썸네일
Thumbnail

개발자로 취업하기 위해선 중요한 요소들이 몇 가지 있습니다.

 

보통 IT 직무의 채용 절차는 다음과 같습니다.

코딩 테스트 -> 필기 테스트 -> 역량 면접 -> 인성 면접 -> 건강검진 -> 입사

 

각각

  1. 알고리즘 구현 능력
  2. CS(Computer Science) 지식 (전공 이론 지식)
  3. 실무 적응 가능성
  4. 회사 및 직무 적합도
  5. 건강 이상

위의 요소가 중요합니다.

 

이 중 가장 처음으로 접하는 테스트인 알고리즘 구현 능력은 주어진 문제를 해결하는 과정을 평가하므로 적절한 상황에 적합한 알고리즘을 적용하기 위해 자료구조와 알고리즘 학습이 필수입니다.

 

따라서 이 책은 취업 준비를 위해 자료구조와 알고리즘을 복습, 독학하는 과정에서 프로그래밍 언어에 대한 자료는 많이 있지만 자료구조와 알고리즘을 같이 묶은 집약된 자료를 찾기 어려웠고 국비지원 강의를 들을 때 비전공자 분들과 협업한 경험을 통해 프로그래밍 자체에 어려움을 겪는다는 것을 알게 되어 도움이 되고자 작성하게 되었습니다.

 

이 부분에 착안하여 고등학교 수리 과외 경험을 살려 언어만 알고 있다면 비전공자도 최대한 쉽게 이해할 수 있도록 작성한 PDF 형태의 전자책입니다.

 

언어는 가장 기본으로 여겨지는 C와 이해가 쉬운 Python을 기반으로 작성하였으며 목차에서 목록을 클릭하면 해당 본문 페이지로, 본문 페이지의 제목을 클릭하면 다시 목차로 넘어올 수 있도록 만들었기에 전자책의 편의성을 극대화하였습니다.

 

공부가 주목적이라 마케팅이 전혀 없었기에 몇 권 팔리진 않았지만 지인을 포함한 구매하신 분들 전부 좋은 자료라는 호평이 이어졌습니다.

 

관심 있으신 분들은 한 번 구경하셔도 좋을 것 같습니다!!

 

https://kmong.com/gig/290286

 

누구나 쉽게 독학 가능한 자료구조 알고리즘 전자책을 드립니다. | 20000원부터 시작 가능한 총 평

1개 총 작업 개수 완료한 총 평점 5점인 코딩독학의 투잡∙노하우, 직무스킬 전자책 서비스를 1개의 리뷰와 함께 확인해 보세요. 투잡∙노하우, 직무스킬 전자책 제공 등 20000원부터 시작 가능한

kmong.com

728x90

댓글()

개발자를 준비하는 학생입니다.

카테고리 없음|2021. 11. 27. 01:08
728x90

Front-End 개발자로 취업하여 Back-End까지 섭렵해 Full-Stack 개발자로 성장할 계획이며 Data에 강력한 언어인 Python에 익숙하단 점을 이용하여 여러 가지를 업무에 적용해나갈 생각입니다.

 

이 블로그는 이제부터라도 취업을 준비하며 경험한 프로그래밍 관련 지식과 경험을 기록할 생각입니다.

 

또한 취업을 하더라도 공개 가능한 정보들을 기록해가며 성장해 나갈 예정입니다.

 

올라온 글들을 통해 많은 정보들을 얻어가시고 관심 가져 주시면 감사합니다!!

728x90

댓글()