플러닝 Flearning

페이스북 엔지니어가 되기 위한 면접 질문 본문

프로그래밍과 진로/프로그래머 진로

페이스북 엔지니어가 되기 위한 면접 질문

플러닝 2016.07.27 17:25

페이스북 엔지니어가 되기 위한 면접 질문





이 글은 한글 번역본입니다.

(출처: http://www.businessinsider.com/15-brain-bending-interview-questions-that-every-facebook-engineer-can-answer-2012-3?op=1)












구글은 엔지니어를 뽑는 인터뷰에서 굉장히 어렵고 말도 안되는 질문들을 한다고 알려져 있는데요,


페이스북 인터뷰에서도 꽤 난해한 질문들이 많다고 합니다. 


Glassdoor.com는 인터뷰 경험을 평가할 수 있는 사이트인데요,


이 웹사이트에서 찾은 흥미로운 인터뷰 질문들을 살펴보도록 하겠습니다.













Q: 언제든 온라인 중인 사용자들의 인원 수를 계산할 수 있는 함수 식을 쓰세요.



직위: 소프트웨어 엔지니어


사용자들이 로그인, 로그아웃하는 시간과 기간이 주어집니다.


이 질문을 통해서 페이스북은 간단하지만 정말 중요하게 계산할 수 있는 


효과적인 알고리즘을 만들 수 있는 능력을 요구합니다.













Q: 페이스북의 사기성 신용거래에서 어떤 이익을 얻을 수 있을까요?



직위: 위험요소 담당자


페이스북은 복잡한 주제의 질문을 하는 구글과 달리


많은 가상의 질문들을 하는데요, 이 질문은 그 중 하나의 예시입니다.













Q: 제시된 문자를 바탕으로 모든 가능한 비밀번호를 만들어보세요.



직위: 소프트웨어 엔지니어


대부분의 사람들은 특수 문자 등을 써서 가장 맞추기 어려운 비밀번호를 만들고 싶어할 것입니다.


예를들면 알파벳 a 대신 @를 쓰는 등, 페이스북은 이러한 문자들을 예시로 만들어서


비밀번호에 쓸 수 있는 한 단어를 제시합니다.


그리고 이 단어의 문자들을 조합해서 만들수 있는 모든 비밀번호 배열을 찾아내야 합니다.


또한 이를 통해서 페이스북은 좋지 않은 비밀번호를 골라내서


사이트의 보안에 더 신경 쓸 수 있습니다.













Q: 제시된 수많은 문자 배열에서 가장 사용 빈도가 높은 단어 10개를 알아내세요.



직위: 소프트웨어 엔지니어 인턴


페이스북은 아주 많은 데이터를 가지고 있는데요,


이를 분석해서 최신 경향이 무엇인지 파악할 수 있어야합니다.


이는 사용자들의 뉴스피드에 표시할 광고들을 정하고


적절한 정보를 전달하는데 사용되는 방법 중 하나입니다.













Q: 기본적인 연산을 통해서 루트 함수를 만들어보세요.



직위: 소프트웨어 엔지니어 인턴


루트 연산은 중요하고 복잡한 수학 연산입니다.


다른 수학적 요소와 마찬가지로 이는 기본적인 연산을 기반으로 만들어집니다..













Q: 그래프의 중심을 찾으세요. (그 중심 꼭짓점은 다른 모든 꼭짓점과 연결되어 있지만, 그 모서리는 중심 방향에 있습니다.)



직위: 소프트웨어 엔지니어 인턴


엔지니어 인터뷰라면 복잡한 수학 문제는 필수겠죠?


페이스북은 논리적으로 생각하는 방법과 그래프 이론과 같은 기본적인 생각을 이용해서


연결되어있는 사물들의 구조를 파악할 수 있는 능력을 요구합니다.


이러한 능력은 페이스북에게도 정말 유용합니다.


페이스북 친구들 사이의 관계가 어떻게 조직되어있는지를 알 수 있기 때문이죠.













Q: 읽고 말하기 수열에 관련된 다양한 질문들



직위: 소프트웨어 엔지니어


일고 말하기 수열은 소설 개미에서 소개되면서 유명해져서


한국에서는 개미 수열이란 이름으로 잘 알려져 있는데요,


이 수열은 앞의 수를 연속된 같은 개수로 묶어서 읽는 방식으로 만들어집니다.


예를 들면, 


1을 "1개의 1"로 읽습니다 (11)

11을 "2개의 1"로 읽습니다 (21)

21을 "1개의 2와, 1개의 1"로 읽습니다 (1211)


인터뷰에서는 이러한 방식의 수열은 만들고 다루는 것을 요구합니다.













Q: 사용자 베이스를 더 확장하고 발전하기 위해서 페이스북이 무엇을 할 수 있을까요?



직위: 플랫폼 작업 분석가


페이스북은 새로운 사용자들을 끌어들이기 위해 많은 "분석가들"을 고용합니다.


그래서 연장자들과 같은 롱테일 유저들을 끌어들일 수 있는 좋은 방법에 관해 많이 물어볼 것입니다.













Q: 기본으로 제시된 정수보다 큰 두 정수를 곱하세요. 이 큰 숫자들을 어떻게 데이터 구조로 나타낼 것입니까?



직위: 소프트웨어 엔지니어


큰 두 정수를 곱하는 함수를 적어야합니다


이 숫자는 정말 큰 숫자여야 하는데요,


정수보단 다른 종류의 데이터 포인트로 나타낼 정도로 큰 숫자이어야 합니다.


그리고 이 두 숫자를 곱한 값을 연출할 수 있어야 합니다.













Q: 제시된 숫자 모음에서 한 가지 숫자를 찾는 방법은 무엇일까요?



직위: 소프트웨어 엔지니어


검색은 페이스북에서 굉장히 중요한 부분입니다.


사이트에는 무수한 정보들이 있는데요, 사용자들은 적절한 정보를 가능한 빠르게 찾고 싶어합니다.


이러한 인터뷰 질문을 통해서 너무나 많은 정보들을 다 확인해야하는 문제점을 해결할 수 있습니다.













Q: 파일에 있는 단어를 가장 흔히 쓰이는 순서대로 나열하세요.



직위: 컴퓨터 작업 엔지니어


제시된 텍스트 파일에서 가장 흔히 쓰이는 단어를 찾아낼 수 있어야 합니다.


페이스북은 사이트에서 최신 경향이 무엇인지 알아야 하기 때문에,


이 질문을 통해서 뉴스피드에서 가장 흔히 쓰이는 단어가 무엇인지 추론할 수 있습니다.


또한 그 자료에서 트렌드가 무엇인지 예언할 수 있습니다.













Q: 만약 같은 팀의 직원이 담당하는 일을 끝내지 않는다면 어떻게 할 것입니까?



직위: 사용자 작업 분석가


페이스북은 아직 스타트업이기 때문에 최고가 되기 위해서 모든 직원들이 열심히 일해야합니다.


다른말로, 게으른 직원들이나 자신의 일을 적절하게 하지 못하는 사람들을 가려내야한다는 것입니다.


이 면접 질문은 난해할 수도 있는데요,


어떤 회사든 성공을 위해서는 가장 중요한 질문일 것입니다.


그리고 페이스북은 면접에서 이와 같은 어려운 질문들을 자주 물어봅니다.













Q: 페이스북의 광고와 구글의 광고의 차이점이 무엇입니까?



직위: 비즈니스 분석가


페이스북과 구글 모두 사용자가 무엇을 하는지 추적해서


사용자가 클릭할 만한 적절한 광고를 전달합니다.


하지만 페이스북과 구글은 정말 다른 두개의 플랫폼인데요,


비즈니스 관점에서 어떤 차이점이 있을까요?


둘은 서로 정말 큰 경쟁자기 때문에, 이 질문에 알맞은 대답을 해야할 것입니다. 













Q: 당신의 이상적인 팀을 말해보세요.



직위: 사용자 작업 분석가


성공적인 진로의 한 부분은 어디에도 잘 어울리는 최적의 팀을 구성하는 것입니다.


이 팀의 총합은 각 파트의 전체보다 많은데요


페이스북은 800만이 넘는 사용자들 가운데 아직 제대로 구축된 것은 없습니다.













Q: 향후 5년간 페이스북의 가장 큰 도전은 무엇이라고 생각합니까?



직위: 소프트웨어 엔지니어


이 질문은 흔치 않은 면접 질문은 아니지만, 소프트웨어 엔지니어에게는 드문 질문입니다.


소프트웨어 엔지니어에게 물어보는 다른 대부분의 질문들은 기술적인 것들이 많이 때문입니다.


마크 주커버그 또한 엔지니어로 시작했는데요,


그래서 엔지니어들을 포함한 모든 직원들로부터의 미래의 페이스북을 위한 조언을 받기를 원하고 있습니다.

저작자 표시
신고
0 Comments
댓글쓰기 폼