번외로 이런 관점에서 볼 때 백엔드 개발에서 시스템적인 사고를 하지 않고, 자꾸 코드베이스 레벨에서 해결하려고 한다면 대체로 안 좋을 가능성이 높다고 생각한다. 예를 들어 주기적으로 무언가를 실행할 일이 있을 때 그냥 본인이 사용하는 백엔드 프레임워크 + cron job이 붙은 플러그인으로 해결하려고 한다거나... 백엔드 개발자에게��� 코드 레벨의 관심사 분리만큼이나 시스템 레벨에서 관심사의 분리가 무엇보다 중요하다. 보통 이런 사고를 할 수 있냐 없냐가 이 사람에게 맡길 수 있는 복잡도의 크기를 결정하곤 한다.
자스 대충 쓸 줄은 아는데 코드 복사기 수준이라 이번에 제대로 알아보려고 모던 자바스크립트 튜토리얼 한 번 쭉 보려한다 하니까 다들 그렇게까지 할 필요없다며 개발하면서 구글링 하라는데…
나는 그냥 할 거긴 하지만 다들 너무 절레절레 하니까 쓸 데 없는 일 사서 하는 건가 싶네…
최근 미국 블라인드에 메타 (페북) 개발자가 나눈 메타 개발자 인터뷰 팁인데 내용이 👍
--
안녕! 나는 6년 동안 메타에서 개발자 면접관으로 활동했어. 최근에 메타가 다시 채용을 시작하면서 면접을 다시 시작했는데, 블라인드 가족 모두가 메타에 채용 될 수 있도록 코딩 면접 팁을 몇 가지 공유하고 싶어.
1. 자기소개를 할 때 너가 짤렸다는 이야기를 전혀 언급할 필요 없어. 그냥 이전 회사를 나간 것은 너의 결정이었다고 얘기해. 만약 짤렸다고 솔직히 언급하면 면접 시작부터 부정적인 편견을 갖게 될 수 있잖아 (우리는 편견을 피하도록 훈련받긴 했지만... 굳이 우리를 시험에 들게 할 필요는 없지).
2. 퇴사 이후 무엇을 했는지에 대해 너무 많은 시간을 소비하지 마. 어�� 사람들은 세계 여행을 했다는 이야기를 몇 분 동안 해. 전혀 관심 없어.
3. 면접과 관련이 없는 사이드 프로젝트에 대해 깊게 얘기하지 마.
4. 자기소개는 30초나 최대 1분 내로 제한해. 면접관이 더 알고 싶다면 추가 질문을 할 거야.
5. 메타의 대부분의 면접관들은 여기서 오래 일하고 아마 몇 년 동안 같은 코딩 질문을 계속 물어봤을 거야. 대부분 질문들은 Leetcode에 유출되어 있으니, 면접에 합격할 확률을 높이려면 Leetcode 연습에 집중해. 나도 6년 동안 같은 2개의 질문만 사용했는데, 아직 이 문제들을 완벽하게 푸는 방법을 사람을 거의 만나본 적이 없어.
6. 코딩 속도를 향상시키는 데 집중해. 2개의 코딩 질문에 코드를 작성할 시간이 많지 않아. 대부분의 시간은 해결책을 생각하는 데 사용하고, 코딩은 각 질문당 5분 이상 걸리면 안 돼.
7. 데이터 구조를 잘 ���부해 둬. Set/Hash map 은 거의 모든 질문에 유용해. Linked List도.
8. 작성한 너의 코드를 한번 검증 하는 걸 잊지 마. 시간이 부족하다 보니 대부분 자신의 코드에 심각한 결점이 없는지 확인하는 것을 잊곤 하더라. 유닛 테스트나 테스트하기 더 쉽게 리팩토링 할 수 있을지 언급이라도 해. 테스트/리팩토링 분야에서 조금이라도 주도적으로 행동하면 체점을 더 좋게 받을 거야.
9. 알고리즘/데이터 구조의 시간 복잡도를 잘 알아둬. Sorting 같은건 정말 흔하자나? 꼭 sorting의 시간 복잡도를 알아두고... 또 너가 사용하는 언어에서 sort 함수가 어떤 정렬 알고리즘을 사용하는지 알아두면 좋아.
10. 면접을 망쳤다는 확신이 든다면 면전관에게 감사 메일을 보내는 데 시간을 낭비하지 마. 좋은 매너지만 결과를 바꿀 수는 없어. 그냥 다음 면접 준비에 집중해.
면접관들은 네가 면접에 합격하기를 정말로 원해. 그러니 그들을 무서워하��� 마. 예를 들면, 나는 누군가를 합격시킬 때마다 기분이 좋아져. 면접 보러 가는 모든 사람들에게 행운을 빌어. 🤞