7월, 2018의 게시물 표시

개발다운 개발에 대해...

어쩌다가 2년 반 전에 내가 했던 프로젝트의 코드를 보게 되었다. 코드가 너무 구렸다. 그때도 나는 나름 설계나 코드 품질에 신경을 많이 썼었는데, 지금 돌이켜보면 역량이 많이 부족했었던 것 같다. 내가 개발다운 개발을 한 지가 얼마나 됐을지에 대해 생각해보았다. 길게봐도 반년이 채 안되는 것 같고, 깐깐하게 보면 아직도 많이 부족한 것 같다. 이제서야 슬슬 뭘 좀 알아가고 개발다운 개발을 시작하는 단계라고 생각이 들었다. 아무튼 그래서 내가 생각하는 "개발다운 개발" 의 기준에 대해 써보려고 한다. 물론, 지극히 개인적인 생각이며 각자가 일하는 도메인과 상황에 따라 매우 다를 것임을 인정한다. 1. 프로그래밍 언어와 Good Practice 들에 대한 깊은 이해. "언어는 도구에 불과하다" 라는 말이 있다. 그냥 문장 자체적으로만 보면 물론 맞는 말이다. 하지만, "불과하다" 라고 표현하기에는 언어는 너무나도 중요한 도구이다. 그리고 정말 공부를 많이 해야하는 도구이다. 언어는 사고를 지배하고, 언어를 공부하고 이해한다는 것은 생각하는 법과 철학을 배우는 것이다. 오랜 시간동안 전 세계적으로 여러 프로젝트들이 개발/연구되고 다양한 사람들이 토론/합의하면서 발전한 소프트웨어 기술과 패러다임들이 프로그래밍 언어에 그대로 녹아들어간다. 즉, 언어를 깊게 공부함으로서 소프트웨어 개발에 대한 철학과 통찰, 패러다임, 트렌드를 알 수 있다. 그리고 언어를 깊게 공부한다는 것은 그 언어에서의 Good Practice 들을 공부하고 숙달하는 것을 포함한다. 언어의 feature spec 이 도구라고 한다면, Good Practice 는 도구를 사용하는 방법이다. 단순히 언어의 문법을 익히고 라이브러리에서 어떤 기능을 제공하는 지 아는 것이 중요한게 아니라, 어떤 상황에서 어떻게 사용해야하는 지에 대한 Good Practice 를 제대로 아는게 핵심이다. 내 개인적 기준에서, 이 부분에 대

일본 오사카 여행 (7/13 ~ 7/16)

이미지
7/13 (금) ~ 7/16 (월) 3박 4일 간 일본 오사카 지역으로 여행을 갔다왔다. 내 생애 2번째 해외 여행이었다. 첫 해외 여행은 2년 전쯤 삼성에서 단체로 보내준 해외연수(?) 차원의 여행이였기 때문에, 이번이 내가 태어나서 처음으로 자의적으로 해외여행을 간 것이었다. 비행기 타기전. 인천공항. 비행기는 2년전에 처음탔을 때는 매우 신기했는데, 이번에는 하나도 신기하지 않았다. 밤에 일본에 도착했다. 그리고 남바역으로 왔다. 일본에 왔구나 라는 느낌이 들었다. 직장인들이 회식을 한건지, 양복입고 서로 신나보이더라. 그리고 엄청 더웠다. 간단하게 다코야끼를 먹었다. 맛있었다. 2일 째에는 교토로 갔다. 이 사진에 보이는 곳을 먼저 갔는데.. 여기가 이름이 뭐더라.. 디지몬 만화에서 맨날 보던 기찻길이다. 진짜 디지몬 만화에서 기차올때 나오는 소리가 그대로 난다~ 여기도 갔는데, 이름이 어딘지 까먹;; 암튼 좋았다~ 날씨는 무지더웠다;; 이날 완전 땀 범벅이였다. 대나무숲. 날씨가 화창하구만! 일본 편의점에 가면 이렇게 꼭 잡지가 모여져있는 곳이 있었다. 아~ 아사히 시원~하다~ 여기는 우메다 공중정원(?) 셋째날은 유니버셜 스튜디오에 갔다! 옛날에 LA에서 갔었는데 거기랑 느낌이 비슷했다! 고베에 가서 먹은 고베규! 완전 맛있다! 세명이서 간단하게만 먹었는데 17000엔정도 나온듯? 야간에 보면 더 멋있는 오사카성! 반짝반짝하니 좋다~~ 이츠란 라멘~ 맛있다! 아사히도 넘나 짱짱~ 나는 편의점에서 파는 빙결 맥주가 왜케 맛있던지... 일본이 제일 부러웠던 점 같다.. 레몬/자몽 들어간 맥주 다 맛있다! 마지막날 아침의 번화가 모습. 일본은 역시 번화가가 느낌이 좋다~ 아무튼 해외여행을

채용공고는 구체적이고 투명해야한다.

얼마전 아는 후배가 C++ 개발자 채용공고라면서 링크를 하나보여줬다. https://www.think-cell.com/en/career/jobs/development.shtml 독일에 있는 think-cell 이라는 회사의 개발자 채용공고인데, 내가 봤던 채용공고 중에 가장 멋있었다. (내가 봐봤던 채용공고가 몇개 안되긴 하지만..) 일단 회사 내에서 하는 일과 기술 스택 등에 대해 구체적으로 적어놓은 점이 맘에 들었다. 그리고 그 내용은 더더욱 맘에 들었다. 적어놓은 항목 하나하나가 실력있고 열정있는 C++ 개발자라면 누구나 혹할 만한 내용과 키워드들이었다. 정말 멋진 회사라고 생각되서 블로그에 포스팅을 하게되었다. 반면에 우리나라에 저런 C++ 회사가 있는 지 생각해보면 아무 회사도 떠오르지 않는다. Java/Python 등을 주로 사용하는 서비스 분야 쪽에서 생각해보면 '괜찮은 회사' 들이 몇몇 떠오르지만, C++이나 시스템/로우레벨 쪽에는 그런 회사가 상대적으로 적다고 느껴진다. (여기서 '괜찮은 회사' 은 내 주관적인 기준에서, 기술적으로 트랜디하고, 오픈소스에 참여하고, 의사결정과 정보가 투명하고, 실력과 성과에 부합하는 보상을 지급하고, 열정있고 실력있는 사람들이 모여있는 회사를 의미한다.) 아무튼 회사가 좋고나쁨을 떠나서, 채용공고를 저렇게 세부적으로 적는다는 점 자체가 많은 회사들이 본받아야할 점 같다. 저 채용공고를 보면, 어떤 언어,컴파일러,라이브러리를 사용하는지, 어떤 버전컨트롤을 쓰는지, 어떤 툴들을 쓰는지, 사내 코딩컨벤션이 있는지, 유닛테스트를 하는지 등에 대해서 많은 내용을 써놨다. 즉, 저 회사는 저런 점들에 대해서 중요하게 생각하고 신경을 쓰고 있기 때문에 채용 공고에 저런 점들을 적어놓은 것이고, 평소에 저런 점들을 중요시 여기는 개발자가 채용 공고를 본다면 자연스럽게 호감이 가고 회사에 지원하게 될 것이다. 채용 공고에 적어놓은 내용들이 내가 관심있거나 하고싶은 내용들이 아니