혹시 it 쪽으로 해서 북미권 진입희망자에게는 괜찮은 글일 거 같아서 옮겨본다.
I do interviews at Google. Most common problems I see for new grads are:
lack of in-depth experience with at least one language. At work, you need to be able to learn languages on fly and write quality code in those languages. I cannot trust you to do that if in the last 4 years you haven't even mastered one (quality, not quantity is the key here). I don't care what language it is, but you need to demonstrate competence in the language you do the interview in.
Write easily readable code. A lot of people jump right into coding a partial solution, then try to patch it up in the end with a bunch of spaghetti code. That's how you get messy code and bugs. Don't do it in real software engineering and don't do it in an interview. Take a step back, work through examples, flesh out an algorithm first.
A lot of new grads are great at solving textbook algorithms problems (e.g. trees, graphs, search, etc). But then they start sucking when presented with an open-ended problem with no exact solution. I am not testing your communication skills and waiting for you to ask me to "clarify" the problem. I want to see your intuition and what's the best, most general solution that you can come up with.
나는 구글에서 인터뷰를 진행해본 사람인데 신졸자들에게 가장 흔한 문제점 내가 파악한 거 적어본다.
최소한 한 개 이상의 (컴퓨터) 언어에 대한 깊이있는 경험이 부족하다. 직장에서 인터뷰이는 즉석에서(on the fly) 여러 언어를 배울 수 있어야하고 그 언어로 질높은 코드를 짜는 것이 필요하다. 내 입장에서 볼 때 니가 지난 4년간 한 하나의 언어조파 마스터하지 못했다면 너를 신뢰할 수 없는거야.(질적인 측면에서이다.양적인 측면을 말하는 게 아님). 그게 무슨 언어인지는 상관하지 않지만 니가 인터뷰를 할 때에 그 언어에 대한 충분한 능력을 보여줘야만 하는 거다.
쉽게 읽을 수 있는 코드를 짜라. 많은 사람들이 문제 전체가 아닌 부분적인 해결책을 제시하는 코드로 뛰어들곤 한다. 그리고 다시 그걸 고치려고(patch) 하지. 그러면서 서로 얽힌 스파게티처럼 알 수 없는 코드를 만들고야 많다. 이런 이유로 엉망인 코드와 버그가 생겨나는 거다. 이걸 진짜 소프트웨어 엔지니어링 세계, 그리고 인터뷰 현장에서 하면 안된다. 한 단계 뒤로 물러가서 문제를 아주 심도있게 연구하고 알고리듬에 살을 붙여야(flesh out) 한다..
많은 졸업자들은 교과서에 있는 알고리즘 문제(예를 들자면 트리, 그래프, 서치 등)를 해결하는 능력은 탁월하다. 그러나 그들이 정확한 답이 없는 열린 결말의 문제(open-ended problem)에 직면하면 곧 망하기 시작한다. 나는 너의 커뮤니케이션 스킬을 테스트하는 것이 아니고 나에게 그 문제를 좀 더 명확하게 인식하기 위해 내게 질문하기를 바라고 있다. 나는 너의 직관을 보고 싶다. 그리고 너의 가장 큰 장점, 니가 찾아낼 수 있는 가장 일반적인 해결책도.
출처는 reddit인데..원래 글은 내가 UC Berkely에서 Computer Science로 학사를 받았는데 취직을 하지 못했다면서 징징대는 글에 대한 베스트 답글이다.