멘토지원
파트너스
현직자 클래스
멘토 찾기
Best 질문답변
소프트웨어 엔지니어의 면접 전략과 필수 역량
Amazon · Software Development Engineer
약 6년 전
💬 멘티의 질문
안녕하세요. 소프트웨어 엔지니어를 꿈꾸는 취업준비생 입니다. 학부 과정 중 씨 언어, C++를 배웠고 프로그래밍에 흥미를 느꼈습니다.

ⒸFotis Fotopoulos


만약 제가 앱 개발이 아닌 C 언어로 해당 기계에 맞게 수정하고 제어하는 소프트웨어 엔지니어 직무로 회사에 면접을 보러 간다면 어떤 걸 물어볼까요? 

또 소프트웨어 엔지니어로서 갖춰야 할 역량, 이를테면 중점적으로 보는 인성이나 기술은 무엇인지 알려주시면 정말 감사하겠습니다. 조언 부탁드립니다!


💬 홍성모 멘토의 답변

멘티님 안녕하세요. 먼저 소프트웨어 엔지니어로 진로를 결정한 것을 환영합니다. 대학 교과 과정에서 아마 *임베디드 시스템 쪽을 많이 공부했을 것 같네요.

전체적인 그림부터 그려보자면, 보통의 소프트웨어 엔지니어는 임베디드 같은 기계에 가까운 설계보다 사용자에 가까운 프로그래밍 분야의 역량을 많이 요구합니다. 

ⒸNESA by Makers


기계를 제어하는 임베디드 소프트웨어는 소프트웨어 엔지니어보다는 하드웨어 쪽에 가까워요. 이쪽에 특화된 직장에 대해선 잘 설명하기가 어려울 것 같습니다만, 일단 아는 한도 내에서 알려드릴게요.

프로그래밍 기술 VS. 프로젝트 질문

면접 질문은 회사별로 다릅니다만, 삼성, LG, SK 등의 대기업에선 프로그래밍 기술에 대해서 잘 묻지 않습니다. 이보다는 무슨 프로젝트를 했었는 지를 중점적으로 물어보죠. 그 외에는 심화 지식보다는 일반 기업 면접 질문하고 비슷하다고 생각하시면 됩니다.

여러 가지 요인이 있겠지만, 제 생각에는 입사 후에 프로그래밍 교육을 다시 받기 때문에 프로그래밍 역량에 관해 심도 있게 묻지 않는 것 같아요. 아무리 컴퓨터 공학을 전공했어도 학교에서 배운 지식은 대기업에서 바로 활용하기에 거리가 있거든요.

하지만 네이버/카카오 같은 프로그래밍을 많이 써야 하는 회사에선 프로그래밍 관련 질문을 많이 합니다. 서비스의 규모에 비해 인력이 적어서, 바로 실전에 투입되어야 하기 때문이죠. 

ⒸMarkus Spiske


보통 컴퓨터 공학 과정의 기본을 많이 물어봅니다. 혹시 이쪽에 관심이 있다면, 자료구조론, 알고리즘, 객체지향 프로그래밍을 숙지해야 면접 때 주어지는 문제를 풀 수 있습니다. 임베디드 소프트웨어 쪽은 자리가 있긴 하지만, 가뭄에 콩 날만큼 적긴 해요.

잘 쓴 코드를 내 것으로 만들자

소프트웨어 엔지니어 직군은 협업 잘하는 사람을 필요로 합니다. 규모가 큰 소프트웨어를 만들어야 할 테고 그러기 위해서는 필수적으로 다른 사람과 협업해야 하기 때문이죠. 여기에서 협업이란 자신이 써 놓은 코드/매뉴얼을 남들도 빨리 이해하게 하는 것을 의미합니다. 

이런 역량을 얻는 가장 빠른 방법은 다른 사람이 만든 코드/매뉴얼 중에서 잘 쓴 부분을 내 것으로 만드는 노력을 하는 겁니다. 좋은 부분을 판별하는 것은 어렵지 않아요. 그런 부분은 기본만 할 줄 아는 사람이 봐도 "우와" 소리가 저절로 나오거든요. 

같은 과에 프로그래밍을 잘하는 친구가 있다면, 같이 들은 수업에서 내준 과제 코드를 공유해달라고 부탁해보는 것도 좋아요. 단순한 과제로는 그 사람이 잘 짜는지 못 짜는지 알기 어려우니, 좀 복잡한 과제를 읽어보는 걸 추천합니다.

저의 답변이 도움이 되었으면 좋겠네요. 혹시 더 궁금한 점이 생기면 질문 주세요!



*임베디드 시스템: 특정한 제품이나 솔루션에서 주어진 작업을 수행할 수 있도록 추가로 탑재되는 솔루션이나 시스템

홍성모 멘토
Amazon · Software Development Engineer
IT개발/데이터
“행운은 준비가 기회를 만나는 것이다.”
여태 많이 답답하셨죠?
어떤 내용이든 편하게 연락주세요 :)
여러분의 작은 용기, 큰 결심을 응원합니다 !
같은 직무를 다룬 글
인기 있는 글
연구/설계
약 6년 전