brunch

You can make anything
by writing

C.S.Lewis

by 이경종 Aug 20. 2023

임베디드 소프트웨어 베이직

https://www.yes24.com/Product/Goods/121533447



제가 솜털이 보송보송하던 젊은 시절 신입개발자로 첫출발을 하던 때가 생각납니다. 첫 직장 입사를 며칠 앞둔 어느 날로 기억합니다. 이미 십몇년 이상을 직장생활을 하고 있던 큰매형과 술을 한 잔 하게 되었습니다. 얼큰하게 취한 매형은 직업으로 삼고 있는 분야의 전문가가 되어야 한다고 저에게 열변을 토했습니다. 매형의 지론은 자고로 전문가라면 자신이 하고 있는 일에 대해 3일 밤낮을 쉬지 않고 계속 이야기할 수 있어야 한다는 것이였죠. 그때는 “우와! 3일이나!” 하며 감탄하던 기억이 납니다. 매형이 정말 대단해보였습니다. 하지만 시간이 오래 흘러 그것보다 더 중요한 전문가의 자질이 있다는 것을 알게 되었습니다. 사실 3일 이상은 오랜 경험만 쌓이면 누구나 떠들 수 있습니다. 중요한 것은 전문가로 인정받으려면 3일을 쉬지 않고 떠드는 것이 아닙니다. 누구나 알아들을 수 있도록 전문적인 분야를 설명할 수 있어야 합니다. 그것이 전문가라고 인정받을 수 있는 필수조건 중 하나입니다. 양자역학의 전문가라면 양자역학에 대해 중학생도 이해할 수 있게 설명할 수 있어야 합니다.  


그런데 소프트웨어 개발의 짬밥이 늘어가면서 겪게 된 현실은 그렇지 않더군요. 업무적인 필요에 의해 소프트웨어의 여러 분야를 공부할 수밖에 없었는데요. 시중의 많은 IT기술서들이 ‘지식의 저주’에 빠져 있는 것처럼 보였습니다. 이 계통의 많은 전문가들처럼 말이죠. 특히 제가 몸담고 있는 임베디드 소프트웨어를 다루는 분야는 유독 그 정도가 심하다고 느꼈습니다. 근래 들어 메이커(Maker)와 IoT(Internet Of Things 사물인터넷) 열풍이 불면서 초등학생들을 타겟으로 한 임베디드 계통 기술서들까지 나오고 있지만, 정작 실질적인 임베디드 소프트웨어 개발을 시작해야 하는 학부생이나 주니어 개발자들에게 적합한 책은 찾기 쉽지 않았습니다. 


도서관 서고에 꽂혀 있는 임베디드 서적들의 대부분이 오래된 일본 번역책들인데, 현업에서 쓰지 않는 고루하고 괴상한 한자식 용어가 난무해서 도저히 주니어 개발자들에게 권할 수가 없었습니다. 그나마 내용이 알차고 실용적인 책들의 대부분은 영미권 저자들이 저술한 책들인데 책을 좀 읽다 보면 번역의 한계가 곳곳에서 드러납니다. 번역은 창작만큼이나 창의성과 필력이 필요한 분야입니다. 역자가 해당 기술을 이해하고 번역을 한 것인지 의문이 들 때가 많아서, 차라리 원서를 보게 되더군요. 기술적인 이해가 없이 단순번역한 책부터 읽기 어려울 정도로 난역을 해놓은 책들까지 번역서의 수준은 천차만별입니다. 물론 좋은 번역서들도 많습니다만, 기술서의 경우는 보기 쉽지 않는 번역서들이 여전히 많아 보입니다.  


‘역시 우리말을 쓰는 사람이 쓴 책을 봐야 해’라는 생각을 가져봤지만, 임베디드 소프트웨어를 다루는 국내서적은 그리 많지 않았습니다. 기초입문서의 경우 ‘그냥 몰라도 따라 하기’식의 실습서들은 매우 많지만, 이론을 다루는 기초입문서는 거의 없었습니다. 그리고 기초입문서라고 해놓고, 여전히 일본식 한자번역 용어들이 가득한 책들도 있구요. 그런 책들은 일단 보기가 쉽지 않습니다. 책을 보다가 용어를 찾기 위해 구글링을 해야 합니다. 구글링해서 정보를 찾고, 찾은 정보를 이해하기 위해 다시 구글링을 해야 하지요. 그러다 보면 책은 책상 구석으로 밀려납니다. 더 이상 책을 안 보게 되는 겁니다. 실제 현업 및 현장과 동떨어진 책들입니다. 비전문가들을 위한 기초입문서인데, 전문가들만이 볼 수 있는 책들인 거죠. 


지도해야 하는 후배 개발자들이 많아지고, 주니어개발자들과 소통하면서 그들에게 좋은 멘토링이 필요하다는 생각이 들었습니다. 좋은 멘토링을 하기 위해서는, 그리고 전문적인 지식을 잘 전수하기 위해서는 그들의 눈높이에서 이야기해야 한다는 것을 다시금 깨닫게 되었습니다. 저역시 지식과 기술이 늘어나면서 제 눈높이에서만 얘기하는 것을 당연하게 생각하고 있었던 거죠. 저는 쉽게 얘기한다고 느끼지만, 듣는 쪽에서는 그렇지 않았던 겁니다. 저는 꼰대가 되어가고 있었습니다. 제가 설정한 전문가의 기준에 계속 미끄러지고 있었던 거죠. 저역시 ‘지식의 저주’에서 자유롭지 못했던 겁니다. 이미 바뀐 눈높이를 강제로 조정하는 것은 생각처럼 쉽지 않습니다. 그래서 다른 눈높이가 필요했습니다. 주니어개발자와 같이 책을 써보면 지식의 저주에서 벗어날 수 있지 않을까 생각하게 되었습니다. 공동저자인 민복기님이 없었다면 아마 이 책은 완성되지 못 했을 겁니다. 


이 책은 멘토인 저와 멘티인 민복기님이 서로 아는 것과 모르는 것을 나누며 쓰여졌습니다. 전반부는 기초적인 하드웨어에 대한 내용이 주를 이루고, 후반부는 본격적인 소프트웨어 개발을 다루고 있습니다. 또한 책을 통해 배운 이론을 라즈베리파이를 활용하여 실습할 수 있도록 구성했습니다. 


이 책이 임베디드 소프트웨어 개발을 시작하거나 막 시작한 분들에게 도움이 된다면 더할 나위 없이 기쁠 것 같습니다. 이상 책 홍보를 마칩니다^^ 감사합니다.

 

작가의 이전글 Ch10-1. 툴체인(Toolchain)
작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari