인터뷰

임베디드, 그것이 알고싶다면? OS팀에서 알려드림!

[인터뷰] 썬더소프트 OS팀

2024. 01. 12 (금) 11:22 | 최종 업데이트 2024. 02. 21 (수) 10:02
"임베디드가 뭐지? 용어는 알겠는데, 그래서 어떤 걸 하는거지?"

임베디드 시스템 기반의 SW개발사인 썬더소프트코리아의 (자칭)기둥이라고 할 수 있죠.
임베디드 S/W가 생소하거나, 하고 싶지만 어디서부터 시작할지 몰라 막막했던 분들은 주목!
썬더소프트코리아의 OS팀에서는 어떤 일을 담당하고 있는지, 과연 임베디드 포지션 지원자들은 어떤 걸 준비하면 좋을지! 친절히 다 알려드립니다!

Q. OS팀의 업무에 대해서 알려주세요!

OS팀이 속한 상위 부서에서는 주로 스마트 카메라, VR, Robot 등 다양한 IoT 및 Robotics 디바이스에 들어가는 S/W를 연구 개발하고 있습니다. 부서는 크게 임베디드 S/W를 담당하는 OS팀과 하드웨어 그리고 검증 팀으로 구성되어 있는데요, 그중 OS팀은 각 디바이스에 들어가는 핵심인 OS 및 주변기기 연구 개발을 중점적으로 하고 있습니다.

또한, OS팀의 주된 업무는 하드웨어가 정상적으로 동작하기 위한 OS 시스템을 만드는 것이라고 할 수 있습니다. 각 디바이스의 하드웨어 구성에 맞는 OS를 구성하고 운영에 필요한 Camera, LCD, Audio 등 여러 디바이스 드라이버를 포팅 및 개발하고 있습니다. 
업무 흐름을 간략히 해보면 다음과 같이 3단계로 나눌 수 있을 것 같습니다.

✔ 하드웨어 분석 및 기본 OS 빌드 (bootloader, kernel)
✔ 주변기기 브링업 (Camera, LCD, Audio 등)
✔ OS 기능 검증


Q. 임베디드 S/W 분야는 전공이나 직무 경험이 많이 중요한가요?

아무래도 초반 OS가 하드웨어팀 등 타 부서와의 협력으로 진행되기 때문에 전공지식이 있다면 이해하고 진행하는데 비교적 수월할거에요. 하지만 임베디드 시스템은 어떤 AP(application processor)를 쓰고, 어떤 peripheral device로 구성되어 있는지에 따라 OS구성이 달라지고 있습니다. 그렇기 때문에 팀원들도(경력직들 모두!) 새로운 프로젝트마다 스터디를 진행 후 업무를 수행하고 있습니다. 신입분이라면 이 초반 스터디 구간에 열심히 노력하셔서 업무를 따라 가는게 중요합니다.


Q. 개발환경이나 자주 사용하는 프로그램은 무엇인가요? 

크게 두가지로 나눠볼 수 있을 것 같습니다.

1. 오픈소스에 대한 이해
OS는 AOSP(Android Open Source Project), Kernel 등 오픈소스 프로젝트를 기반으로 구성됩니다. 복잡하게 구성된 코드를 분석하고 이를 하드웨어에 맞게 수정하는 작업이 주된 작업이기 때문에 끈기있게 분석하는 태도와 인내심이 가장 필요합니다. 또한, 모든 시스템이 유기적이기 때문에 단순 분석이 아닌 동작 방식에 대한 탐구심도 필요한 것 같습니다.

2. 프로그래밍 언어
OS 개발에서 C언어는 필수적입니다. 또한 모든 업무가 리눅스 시스템에서 개발이 이루어지기 때문에 리눅스의 기본 명령어 및 사용법에 익숙하면 좋습니다. 그리고 간단한 테스트 프로그램 작성을 위해 shell script 및 python과 같은 스크립트 언어를 다룰 줄 알면 많은 도움이 됩니다.


Q. 임베디드 S/W 업무에 도움이 될 만한 것 들을 알려주세요!

앞서 언급한 오픈소스 프로젝트를 공부하는 것을 추천 드립니다. AOSP나 Kernel은 전세계 사람들이 참여하고 지금도 활발히 개발되고 있는 프로젝트인데, 이러한 코드를 직접 설치하여 빌드해보고 소스코드가 어떻게 구성되어 있는지 하드웨어는 어느 부분에서 제어되는지 등에 대한 이해를 하시면 생소했던 임베디드 S/W가 익숙해지실 것 같습니다.


Q. 어떤 동료와 같이 일하고 싶은가요?

개발 직무를 수행하는데 있어 도전정신은 어느 정도 있어야 된다고 생각합니다. 앞선 질문에 말씀드렸듯이 대부분의 프로젝트 진행하는 데에 스터디는 필수 과정입니다. 그렇기에 새로운 분야를 알아가고 지식을 넓히는 것에 거리낌이 없고, 실패를 두려워하지 않고 무엇인가 끝까지 해낼 끈기를 가진 동료면 좋겠습니다. 또한 동료가 업무로 힘들어 할 때 ‘나만 아니면 돼’라는 생각 보다는 업무를 함께 해줄 준비가 된 사람이면 좋겠습니다.

 
Q. 채용 면접에서 후보자에게 필수로 물어보는 질문은 무엇인가요?

우선 신입 지원자에게는 임베디드 분야를 택한 이유를 묻고 싶은데요, 자신이 들어오고자 하는 임베디드에 대해 어느정도 이해가 있는지를 먼저 파악하고 싶습니다. 아무래도 다른 개발 분야에 비해 생소한 분야이기 때문에 이 분야에 대해 얼마나 이해하고 있고, 왜 이 일을 하고자 하는지 명확한 이유가 있다면 업무를 할 때 망설임이 없이 도전적으로 할 수 있다고 생각합니다.

경력 지원자에게는 현재 저희 팀에 필요한 직무 역량을 보유하고 있는지를 확인하고 있습니다.  그 동안의 경력사항과 경험, 담당했던 업무 위주의 질문과 저희 팀과 잘 융화가 될 수 있을지에 대한 조직 적합성을 중점적으로 묻고 있습니다.


Q. 임베디드 S/W를 꿈꾸는 분들에게 조언이나 응원, 또는 어필 한 마디 부탁 드립니다.

우리가 자주 사용하는 핸드폰이나 카메라가 어떤 식으로 동작하는지 궁금한 적 없으신가요? 임베디드 분야에서는 핸드폰에서 카메라가 어떻게 전원을 받아 사진을 촬영하는지 디스플레이에 프레임을 어떻게 보여주는 지 등을 배울 수 있는 매력적인 분야입니다. 이러한 방대한 시스템은 물론 진입장벽이 있지만, 프로젝트를 통해 경험을 쌓다 보면 남들과 다른 임베디드S/W 커리어를 가진 값진 개발자가 될 수 있습니다.
임베디드 S/W에 관심이 있으신 분이라면 망설이지 말고 도전해주세요!
저작권은 썬더소프트코리아에 있으며, 무단 배포를 금지합니다.