직무 · 중소기업 / SW개발
Q. 포트폴리오와 능력쌓기 (임베디드,펌웨어 개발 현업자 선배님에게 조언구합니다)
미니 프로젝트로 ATMEGA128을 이용한 공기청정기를 만들고 있습니다. 이 미니 프로젝트를 끝내고 stm32를 이용해서 여러가지 크고 작은 작품을 만들어서 모두 포트폴리오로 작성하려고 합니다. 저는 내세울게 하나도 없기 때문에 이 포트폴리오에 목숨을 걸어야합니다. 1. 제가 만든 작품들 소스를 첨부할건데, 제대로 배우고 만든게 아니라서 코드가 조금 조잡하고 전문성이 떨어져보입니다.. 전문성을 높이고 싶은데 방법을 못찾겠습니다.. 2. STM을 많이 사용한다고 알고 있는데, STM32F4시리즈만 쓰나요? 아니면 오히려 이전 버전을 많이쓰나요? 저는 STM32F407 CUBEMX로 코드제네레이트를 해봤는데 아트메가와는 너무 달라서 혼돈이 옵니다. HAL은 무엇이고, SPL은 무엇인지...불하나 키는데도 무슨 함수가 이렇게 많이 들어가는지.. 이 과정을 다 알아야 하는것인지.. 어디에 초점을 둬야 하는것인지.. 3. 여러가지 프로젝트를 하는 것 VS 여러가지를 하는 것 (글자수 제한ㅠ
2019.06.04
답변 1
- 멘멘토31159SK하이닉스코부장 ∙ 채택률 88%
채택된 답변
열정은 대단하신거 같은데 고민이 많으신거 같아 안타깝네요. 저역시 비슷하게 시작을 했던터라(전자공학 전공이지만 사회 나와서 개발을 배웠죠.) 많이 이해가 갑니다. 실제 ATMEGA랑 STM이랑 뭐가 더 좋을지는 회사의 선택입니다. 제 생각에는 하나를 밀고 나가서 그거 하나 빠삭해 지시는게 더 유리합니다. 하나만 제대로 하면 다른거 하는거는 금방입니다. 그리고, 소스코드 첨부는 코드에 자신이 없다면 안하는게 좋습니다. 소스코드보다는 설계가 더 중요합니다. 왜 이렇게 코드가 설계 되었는지 설명할 수 있는 능력을 기르셔야 합니다. 그렇게 하려면 그림을 잘 그려야 하는데요, 그림이라는게 블럭 다이어그램 같은걸 이야기 하는 겁니다. 일단 임베디드니, HW적으로 어떤 블럭들이 있고, 원하는 기능을 만들기 위해 어떠한 블럭들이 어떻게 배치되고, 블럭간의 관계는 어떻게 되는지 설명이 되어야 합니다. 그 후에 그 HW를 구동하는 SW를 설명해야 하는데, 본인이 짠 코드가 되겠죠. 왜 이렇게 코드가 짜졌는지도 그림으로 설명이 되어야 합니다. SW 안에도 여러가지 블럭(또는 function)이 있겠고, 각 블럭간의 관계등을 설명해 주어야 합니다. 그리고 마지막 질문은 이해를 못하겠네요. 다양한 프로젝트를 하는게 중요하긴 하죠. 일단 SW를 잘 짜려면 SW공학부터 익히는게 좋습니다. 소스코드가 조잡하단 이야기는 SW공학 기본부터 차근차근 공부를 해야 한다는 의미입니다. 그리고 임베디드는 요새 프레임워크도 많이 좋아져서 아이디어가 더 중요한 시대가 되었습니다. IoT라고 들어보셨나요? 이것도 임베디드의 일종인데 결국 아이디어 싸움입니다. 라즈베리 파이 같은걸로 좀더 상위 레벨의 시스템을 만들어 낼 수 있습니다. 이건 리눅스까지 가야 합니다. 킥스타터 홈페이지도 한번 봐보세요. 어떤 아이디어들이 임베디드로 구현되고 있는지... 그럼 생각의 폭이 좀 더 넓어질 수 있습니다. 주변에 임베디드쪽으로 잘 하시는 분이 있다면 그분과 같이 프로젝트도 해보세요. 배우는게 많을 겁니다. 아님 교수님께라도 도움을 요청해 보시면 좋을 것 같습니다. 본인이 절박하다면 못할게 없겠죠 ^^
함께 읽은 질문
- Q.Lorem ipsum dolor sit amet, consectet
- Q.Lorem ipsum dolor sit amet, consectet
- Q.Lorem ipsum dolor sit amet, consectet
궁금증이 남았나요?
빠르게 질문하세요.