멘토지원
파트너스
현직자 클래스
멘토 찾기
Best 질문답변
임베디드 개발자를 꿈꾸시나요? 이런 루트의 학습법은 어떨까요?
현대모비스 · 플랫폼SW선행개발팀
약 3년 전
💬 멘티의 질문


멘토님 안녕하세요. 저는 임베디드 개발자직으로 방향을 잡아 공부 중입니다. 컴공 학사 학위 준비와 함께 C언어를 함께 공부하고 있는데요. 임베디드 개발자가 되기 위해 어떠한 것들을 준비하고 공부해야 할까요?


©Jeff Loucks


초보스러운 질문 읽어주셔서 감사합니다. 현직자 멘토님의 솔직한 답변 기다릴게요.


💬 채행아 멘토의 답변


안녕하세요. 임베디드 개발 직무의 범위가 굉장히 넓어 제 답변이 주관적일 수 있습니다. 읽어보시고 본인에게 맞는 내용을 취사선택하시길 바랍니다. 또, 답변은 만약 제가 학생으로 돌아간다면 어떻게 준비할 것 인지를 떠올려 보며 작성해 볼게요. 


 ©Sergey Zolkin


이론은 뼈대입니다

일단 임베디드 시스템은 하드웨어와 소프트웨어가 기기에 내장된 시스템을 의미하므로 개발직 또한 하드웨어와 소프트웨어에 대한 이해가 필요합니다. 개념 이해를 위해서는 자연스레 컴퓨터 공학, 전자 공학 등의 전공 이해가 필요하지요. 

 

현직에 있지만서도, 저 역시 돌이켜 생각해 보면 일을 하기 전에 더 잘 배워뒀으면 좋았겠다 싶은 과목들이 있어요. 특히 회로이론, 전자회로, 신호 및 시스템, DSP, C언어, 알고리즘, OS, 마이크로소프트웨어 등이 그렇지요. 

 

제가 생각하는 임베디드 개발자가 되는 데 있어서 필요한 기술은 크게 세 가지입니다.


1. 회로도를 읽을 수 있는 눈

2. Datasheet에 대한 이해

3. SW 개발 능력입니다.

 

이 세 가지에 대한 기본 베이스를 잡아주는 것이 위에 기술한 과목들이며 과목들을 이수하더라도 세 가지 기술을 온전히 다 배웠다는 보장은 없어요. 현실적으로 대부분 4학년 전공자들 중에도 이를 완벽하게 이해하고 활용할 수 있는 사람은 별로 없거든요. 


©Harrison Broadbent


실제 동작을 학습해 볼까요? 

전공과목들을 통해 이론을 배웠다면 프로젝트를 통해 실제 동작을 구현하며 배우는 경험이 필요합니다. 

 

간략하게 표현하자면, 1. 보드 제어 2. 기능 구현 3. 프로젝트 순으로 진행하면 됩니다. 보드 제어를 처음 시작한다면 아두이노로 시작할 것 같아요. 가장 간단하고 비전공자도 가능하며 인터넷에 레퍼런스 자료도 많습니다. 아두이노 라인트레이서 등의 키트를 사서 장난감처럼 가지고 놀며 보드에 익숙해지세요 

 

2. 아두이노에 익숙 졌다면 AVR 등으로 넘어가세요.당근이의 AVR’이라는 네이버 카페가 양질의 자료가 많습니다. mcu의 제어의 시작 과정입니다. 칩을 포팅하고 센서 제어, 통신(I2C, Uart, SPI, Ble 등)의 기능 구현을 하세요.


3. 지금까지 경험을 바탕으로 기본적 역량이 준비되었다면 개인 프로젝트로 아이디어를 구체화시키세요. 그리고 본인이 일하고 싶은 분야의 대표 기업들에서 신입사원 채용 공고나 대리급 경력사원 공고를 보며 요구하는 역량을 확인하며 커리어 로드를 수정해 나가면서 학습하면 좋을 것 같습니다.


제 답변이 도움이 되면 좋겠네요, 그럼 좋은 하루 보내세요.


채행아 멘토
현대모비스 · 플랫폼SW선행개발팀
연구/설계
학벌과 학점을 제외하곤 모든 스펙을 준비했고 지금은 현대모비스 연구소에서 임베디드 소프트웨어 개발 엔지니어로 재직중입니다.
같은 직무를 다룬 글
인기 있는 글
연구/설계
약 5년 전
잇다의 멤버가 되어주세요 🚀
직무, 취업 콘텐츠를 담은   뉴스레터를 받아볼 수 있어요.
멘토에게 직접   질문할 수 있어요.
현직자 클래스를 무료로 수강할 수 있어요.