<p>저작권이 있으므로, 무단 전제 및 복사를 금합니다.</p> <p> <span style="font-family:gulim, Dotum, Helvetica, AppleGothic, sans-serif;">'개발자의 꿈' 글과 이어지는 글입니다. </span> </p> <p> <span style="font-family:gulim, Dotum, Helvetica, AppleGothic, sans-serif;">it업무 중 일어난 일들의 직장인 에피소드 입니다.</span> </p> <p> <br></p> <p>공감이 가시면 추천 부탁드립니다.</p> <p>================================================================</p> <p> </p> <p> <br></p> <p> <b> 시스템 감시 프로그램 구현</b></p> <p> <br></p> <p>용어설명 : watchdog란? '집을 지키는 개'라는 뜻으로 임베디드 시스템에서 비정상적인 동작이 발생시 시스템을 리셋 시키는 기능이다.</p> <p> 쉽게 설명하면, <b>기기에 문제가 발생시 스스로 reset 하여, 정상상태로 돌아가는 기능</b>이다</p> <p> <br></p> <p> 복잡한 상황을 거쳐, 계속 일을 하는 것으로 되었고, 급하다는 국내 향 프로젝트에 무얼 할 수 있을까 고민을 했습니다.</p> <p>'밥값은 해야 하지 않겠는가?'</p> <p>프로젝트 막바지라 하드웨어 수정은 당연히 불가능하고, 내부 설계 변경도 기간 내에 할 수 있는 것은 아니었고, 적용 시 단기간에 확실한 효과를 기대할 수 있는 부분으로 해야 했습니다. </p> <p>고민 끝에 watch dog 구현을 결정하였습니다.</p> <p>종종 프로그램이 먹통이 되어서 리셋을 해주어야 정상동작이 되는 경우가 있었고, 잠시 살펴본 바로는 프로그램 한 두 곳을 수정 하는 게 아니라 전체를 뜯어 고쳐야 하는데, 당장 할 수 있는 것은 아니었습니다.</p> <p>실현 가능한 실질적인 방안으로 이상 상태 발생시 리셋을 하여 정상 상태가 될 수 있도록 하는 것이 최선이라 판단했습니다. </p> <p> <br></p> <p>구현을 어떻게 할까 고민을 하였고, 사용하고 있는 stm32 칩을 파악해보니, 칩 자체에서 지원이 되는 기능이라는 것을 확인하였습니다.</p> <p>다행이 사용하고 있는 칩을 잘 아시는 프리랜서 분이 계셨고 그 분의 도움을 받아서 구현 및 적용하게 되었습니다.</p> <p> <br></p> <p>저에게는 처음으로 사용하는 stm32칩이었습니다. </p> <p>처음 사용한다는 것이 문제가 아니라, 칩에 대한 개념과 이해만 있으면 처음이라도 업무에 크게 문제가 되지 않는다고 생각이지만, 채용공고를 보면 칩 사용 경험을 중시하는 경향이 강한 것이 사실이죠.</p> <p> <br></p> <p> <br></p> <p> <br></p> <p> <b>기교, 내공, 주화입마 </b></p> <p> <br></p> <p>무협지를 보면, '기교'와 '내공'으로 무공 실력을 판단하는데, 이것은 개발자를 판단하는데도 똑같이 적용 됩니다.</p> <p>특정 업무에 경험이 있고 그것을 알고 있다는 것은 '기교'이며, 본질적인 동작원리를 알고 이해하는 것은 '내공'입니다.</p> <p>'기교'도 중요하지만 '내공'이 높으면, 어떠한 기교든 습득하여 보여 줄 수 있습니다.</p> <p> <br></p> <p>일반적으로 기교를 판단 기준으로 삼는 것은 어쩔 수 없지만, 고수들은 내공을 판단 기준으로 합니다.</p> <p>기교는 금방 습득이 되나, 내공은 단기간에 습득이 불가능합니다.</p> <p> <br></p> <p>학교에서 배우는 건 필요가 없다는 분도 계신데, 학교에서 배우는 것은 기교가 아니라 내공의 기초입니다. 근본적인 동작원리를 배우죠. </p> <p>내공의 기초를 쌓는 겁니다.</p> <p>학습한 동작원리를 실무에서 이해 하는 순간이 성장하는 때입니다. </p> <p>내공과 기교가 하나로 되는 겁니다.</p> <p>요즘엔 학교에서 내공 보다 기교를 중시하는 경향을 보이기도 하는데, 고수를 키우는 것이 아니라 중수를 많이 키우려는 방법입니다.</p> <p>뭔가 잘 하는 것처럼 빨리 보여 주려면, 기교를 가르치면 됩니다. 그러나 내공 없이는 절대 고수가 될 수 없습니다.</p> <p> <br></p> <p>개발자들 중에 기교에 집착하는 사람들은 구현 내용 조차 잘 설명해 주지 않으려 합니다. 이런 분들은 기교에 집착하는 분이며, 고수라고 생각하지 않습니다.</p> <p>고수들은 설명해 주어도 따라 못한다는 것을 알고 있습니다. 고수가 아니면, 이미 보여준 기교만 따라 하기도 벅차하는 것이죠.</p> <p> <br></p> <p>무협지에서 고수를 함부로 따라 하다가 폐인이 되는 것을 '주화입마'라고 하는데, 이것도 개발자에게 적용됩니다.</p> <p>기교만 보고 따라 하다가 상황의 차이점을 모르고 버그를 만들고, 수습을 못하게 되죠.</p> <p> <br></p> <p>많은 분들이 하는 이야기지만, 제가 처음 하는 업무에 어떻게 성과를 내는지 궁금해 하시는 분들이 있어서 간단히 설명 드렸습니다.</p> <p> </p> <p> </p> <p> <b> 잘 모르시는 데</b> </p> <p> <br></p> <p> 국내 향 관련 수정된 부분과 이슈 관련하여 연구소장님 주관으로 회의가 진행 되었고, 기술적인 부분 설명을 한 시간 가량 한 것으로 기억한다.</p> <p>여러 질문을 받았고, 거기에 답변을 했다.</p> <p>설명하고 질문 받으면, 설명한 내용을 이해하고 있는지 알게 된다.</p> <p>설명한 것을 이해하지 못하는 답답함이 계속 되었고, 연구소장님은 펌웨어 관련 업무를 하지 않는 것으로 생각하였다.</p> <p>모든 것을 다 알 수는 없으니, 모르실 수도 있는 것이었다.</p> <p>회의 마치고 연구소장님이 나가신 후, 답답한 마음에 나도 모르게 '잘 모르시는데'라고 말이 튀어 나와 버렸다.</p> <p>나중에 안 일이지만 사내 최고의 펌웨어 전문가를 자칭하고 계셨던 분이었다.</p> <p> <br></p> <p>내가 하는 설명은 서버, 펌웨어, OS, 통신, 드라이버, 하드웨어, ui, 개발이론 등 여러 영역을 넘나들기 때문에 쉽게 하려고 노력은 하나, 다양한 지식이 없으면 이해가 쉽지 않을 것이다.</p> <p> <br></p> <p> 기술적인 내 설명을 모두 이해 하는 분은 당시 실장님 이셨다. </p> <p>딱히 많은 질문을 하지도 않으셨으나, 간단히 몇 마디 하시는 것을 보면 완전히 이해 하신 것으로 보인다.</p> <p> </p> <p> </p> <p> <b> 렌트카의 편법</b></p> <p> <br></p> <p> 옆 팀에서 몇 분이 결제 문제로 회의 중이었다.</p> <p>회의실이 아닌 내 옆에서 회의를 하셔서 들을 수 있었다.</p> <p>내용을 살펴보니, 업무상 실제 테스트를 승용차로 하기 때문에 차를 빌리는 경우가 종종 있는데, 팀장님 1회 결제 상한선이 있어서 5일간 차를 빌리게 되면 실장님 결재가 필요한 상황이었습니다.</p> <p>결재를 어떻게 하느냐로 결정을 못 내리고 있는 상황이었다.</p> <p> <br></p> <p>나 : "팀장님이 관련 비용 사용에 대해서 긍정적이신가요? 부정적이신가요?"</p> <p>후배님들 " "업무상 테스트에 필요한 것이기 때문에 결재에 이의 제기하지 않으십니다."</p> <p>나 : "현재 업무 진행 중인 분이 몇 분이시죠? "</p> <p> "5명 이서 하루씩 5일간 빌려서 결재 올리세요. 그럼 결재 상한선을 넘지 않습니다."</p> <p>후배님들 : "렌트카에서 하루 단위로 빌리면 반납 후 다시 빌려야 합니다."</p> <p>나 : "렌트카 직원한테 법인으로 빌리는 것이고, 법인 직원들 사이에서 5일간 서로 인수인계를 하니 마지막 날에 반납한다고 하면 인정해 줄 겁니다."</p> <p>후배님들 : "그건 편법이잖아요"</p> <p>나 : "편법이 맞죠"</p> <p> "그러나 일을 유연하게 하기 위한 <b>좋은 편법이지 악용은 아닙니다.</b>"</p> <p> "직원이 하루씩 테스트 하기에 필요한 결제일 뿐입니다."</p> <p> "이 정도는 감사를 나와도 징계를 받을 일도 아니고 유연한 일 처리입니다. 뭐하시면 제가 이렇게 해라고 했다고 하세요. 제가 책임 질게요."</p> <p> "<b>편법이 나쁜 게 아니라 악용하는 것이 나쁜 겁니다.</b>"</p> <p> <b>"혼 나는 거 무서워 하는 사람은 아무것도 못해요."</b></p> <p> <br></p> <p>직장에서 상급자 분들은 1회 결재에 대한 권한을 가지고 계신 경우가 있는데, 1회 결재에 대한 금액의 상한선이 있다. 그리고 보통 월 단위로 결재금액 총합에 대한 상한선이 있다.</p> <p>큰 금액을 쪼개고 나누어서 룰을 지키는 방법을 제시해 주었으며, 많이 쓰는 방법입니다.</p> <p> </p> <p> </p> <p> </p> <p> <b> 남한산성 야유회 : 일등을 포기하면 행복할 수 있다</b></p> <p> <br></p> <p> 회사 전체 야유회를 가게 되었고, 나에게는 처음으로 가는 남한산성 유원지였다. </p> <p>서울에서 20년 이상 살고 있는 중 이었으나 남한 산성에 가본적은 아직 없었다.</p> <p>남한성성은 서울 근교의 괜찮은 관광지였다. 그러나 직장인이 휴일에 출근하라고 하면 누가 기분 좋으랴? </p> <p>회사에서는 비용을 쓰는 거고, 직원들은 싫은데 출근하는 거고...</p> <p>이벤트 행사로 사진 촬영 대회가 있었고, 팀마다 사진 촬영을 해서 1위 팀에 부상으로 상품권을 주는 행사가 있었다.</p> <p>팀원 분들이 이걸 해야 하고 저걸 해야 하고 ... 뭔가 바쁘게 해야 할 회사에서 지시한 리스트들을 이야기 했다.</p> <p>우리 팀에서는 내가 제일 상급자인 상태였고 이렇게 말해 주었다.</p> <p> <br></p> <p>"맨날 뭔가 바쁘게 하는 건 많이 해왔잖아."</p> <p> <b>"1등을 포기 하면 행복해 질 수 있어."</b> </p> <p>"평일에 일하느라 힘들었는데, 오늘은 출근까지 해서 이것 저것 하느라 스트레스 받지 말고, 오늘은 그냥 천천히 '슬로우 라이프'를 즐겨봐." </p> <p>"회사에서 온 거라 마음대로 할 수는 없지만, 시키는 건 기본만하고 1등은 포기. 오늘은 그냥 마음 비우고 천천히 즐겨. "</p> <p>"오늘은 쉬는 날이야. 우리는 업무로 일등을 해야지 이런 건 일등 안 해도 되."</p> <p> <br></p> <p>근데 이게 어찌 된 건지, 1등 상은 불참자도 많은 우리 팀에서 받았다.</p> <p> <br></p> <p>"우리 팀은 포기를 했습니다. 대표이사님~~, 그러나 주시면 감사합니다."</p> <p> <br></p> <p> 공휴일에 일정이 잡힌 회사 야유회는 회사측에서는 '출근'이라는 표현 조차 쓰지 않는다.</p> <p>그러나 참여하지 않으면, 뭔가 있을 것처럼 무언의 압박을 준다.</p> <p>이 날은 일당으로 상당한 가격의 좋은 식사와 상품권을 받았다. </p> <p>그거 받고 하루 출근 하느냐고 하실 분들도 있겠지만, 상품권도 못 받은 분들이 더 많다.</p> <p> </p> <p>무능한 관리자들은 모든 것을 잘하려고만 한다. 물론 모든 것을 잘하면 좋지만, 현실상 불가능하다.</p> <p>선택과 집중으로 주요 업무에서 성과를 내는 것이 휠씬 중요하다.</p> <p>선택과 집중이라는 것은 다르게 표현하면, '<b>포기</b>'를 말하는 것이다.</p> <p>이것이 <b>선택과 집중이 어려운 이유</b>이다.</p> <p>"무엇을 포기 할까?" 라는 질문으로 하면, 어려워 질 수밖에 없다. </p> <p> </p>