wonderland

wonderland

There is no end though there is a start in space

일 잘하는 개발자 되기
지난 번에는 경쟁력있는 시니어 개발자로 성장하는 방법에 대한 글을 썼다. 그럼 미들 레벨의 개발자나 주니어 레벨의 개발자들은 어떤 역할을 해야 하는걸까? 또 어떻게 해야 일을 잘한다고 평가받을 수 있을까? 오늘은 필자가 리더의 역할로 살아가면서 팀에 많은 도움이 되는 개발자들은 어떤 개발자이며 어떤 일들을 하는 사람인지에 대해서 이야기해보고자 한다. 얼마전 페이스북 개발자의 성과 만들기 라는 제목의 블로그 내용을 보았는데 그 안에는 페이스북에서 어떠한 기준으로 개발자를 평가하는지에 대해 쓰여져 있었다. 페이스북에서 직접적으로 ...
코드 리뷰 개선해나기기
지난 번 글에 이어 이번 글에서는 필자가 속한 조직에서 필자가 입사했을 때 당시의 시점에서부터 현재까지 코드 리뷰 과정에서의 고민과 변화들을 이야기해보도록 하겠다. 코드 리뷰를 처음 도입하는 회사들은 Github의 PR(Pull Request) 리뷰에서 시작하게 되는 경우가 많다. 하지만 처음에는 어떤 식으로 리뷰를 해야하는지 잘 모르기 때문에 로직적으로 결함이 있는지, 컨벤션은 준수되었는지와 같은 코드 스타일을 주로 본다. 필자가 입사 했을 때 당시에도 주로 코드 스타일이나 로직에 대한 부분의 피드백이 중점적이었다. 그리고 ...
우린 코드리뷰 잘하고 있을까?
코드 리뷰 남들도 다 하더라코드 리뷰 라는 말이 이제는 개발자라면 누구나 익숙한 관용어가 되었지만, 이 용어가 생소했던 시절이 생각보다 그리 오래 전은 아니다. 과거에는 코드는 작성한 개인의 소유물 처럼 여겨졌고 그렇기에 코드에 대한 비판은 나 자신의 비판으로 여겼기에 누군가가 나의 코드를 보는 것 자체만으로 거부감이 있었던 시기도 있었다. 하지만 최근에는 오히려 코드 리뷰를 하지 않는 조직은 시대에서 뒤쳐지는 것처럼 느껴지는 정도의 분위기가 된 것 같다. 반면 최근에 여러 개발자들과 이야기를 나눠보면 본인이 속한 조직에서 코...
시니어 개발자가 선택할 수 있는 리더 포지션
왜 리더로 성장해야 하는가?국내에서 개발자로 생활하면서 느꼈던 것은 많은 개발자들이 연차가 쌓이면서 관리자 역할을 하는 것에 대해 두려움을 느낀다는 것이었다. 관리자는 기술직이 아니며 관리자로 일한다는 것은 자신의 개발자로서의 전문성을 발휘하지 못하고 점점 도태된다고 느끼기 때문이다. 그렇기에 많은 개발자들은 자신이 백발이 될 때까지 개발을 하고 싶다는 환상을 가지고 있다. 반면 우리가 많은 회사에서 경험한 관리자들은 과거에 개발자였다가 어느 순간 관리자를 맡게 된 사람들이며, 주로 일정 관리나 여러 미팅에 참여하면서 기술적...
경쟁력있는 시니어 개발자로 성장하는 방법
개발자가 귀한 시대이다. 여러 IT 회사들이 개발자를 모시기 위해 경쟁을 하고 있다.국내에서는 여전히 생소한 용어지만 나름 이름 있는 IT 회사들은 Developer Relations(DevRel) 라고 하는 대외 개발자들을 대상으로 홍보하는 조직을 구성하여 운영하거나 최소한 HR팀에서 개발자 채용이나 홍보 등을 전담으로 하는 경우도 많이 있다. 필자도 얼마전 T사에서 근무하는 지인이 개발자 채용에 관련해서 조언을 구하기도 했다. 하지만 이 역시 빈익빈부익부 현상이 존재한다. 과거에는 영세한 IT 회사들이 돈이 없다보니 오히려...
엔지니어링의 생산성은 어떻게 측정하나?
필자가 다니고 있는 회사는 소위 매트릭스 조직으로 운영을 하고 있다. 개발자는 교차 기능팀(Cross-functional Team)에서 공동의 목표를 가지고 가설과 실험을 통해 신규 기능 개발을 하거나 기존 기능의 개선 업무를 수행하거나 기능팀(Functional Team)에서 개발자들의 생산성 향상을 위한 레거시 개선 및 개발 환경 개선을 위한 업무를 수행할 수 있다. 대부분의 IT기업에서 개발자는 한정적이고 하고 싶은 혹은 해야만 하는 일들은 많기 때문에 어떤 일을 우선적으로 해야 하는지에 대한 가치 판단 및 우선순위 설...
당신이 아무리 공부해도 개발 실력이 늘지 않는 이유
당신이 아무리 공부해도 개발 실력이 늘지 않는 이유지식은 기술이 아니다백엔드 개발자 4년 차인 A 씨는 퇴근 후에 자기 개발을 위해 기술 도서를 꾸준히 읽는다. 최근에는 리팩토링이라는 책을 읽고 사내의 개발자들에게 자신이 공부한 것에 대해 발표도 했다. 하지만 아쉬운 점도 있다. 마음만 먹으면 언제든 리팩토링 할 수는 있지만 항상 바쁜 일정 때문에 리팩토링 할 시간이 없다. 사실 지금도 그럭저럭 잘 돌아가고 있는데 리팩토링을 한다고 새로운 비지니스 가치가 더해지는 것도 아니니 그 시간에 새로운 기능을 하나 더 만드는게 낫지 않...
IT기업의 6가지 문화패턴
최근 IT 기업에서 개발자들을 모시기 위한 경쟁이 치열해지고 있다. 개발자들이 회사를 선택할 때 보는 요소 중에 금전적인 부분도 중요한 요소 중의 하나일 수는 있겠지만 좋은 개발문화를 가지고 있는지도 개발자들에게 중요한 관심사 중의 하나이다. 좋은 개발 문화에서 일할 때 개발자로서의 높은 성장도 기대할 수 있다고 믿기 때문이다. 그렇기 때문에 회사들은 몸값 경쟁 이외에도 회사의 개발문화를 홍보하기 위한 노력도 많이 기울이고 있다.근데 좋은 개발문화라는 것은 무엇일까? 애자일 프로세스를 적용하고 있다든지, 코드 리뷰를 한다든지,...
소프트웨어 품질이란 무엇일까?
오래전부터 개발자로서 품질에 대한 고민이 많았다. 나에게 좋은 품질이라고 한다면 버그가 없는 코드를 의미했고, 유지보수하기 쉬운 설계와 코드, 기획 의도가 잘 구현된 것을 의미했다. 나는 품질이 높은 코드를 만들고 싶었지만, 현실은 항상 녹록하지 않았다. 항상 시간에 쫓겨서 만들어야 했고 품질을 유지하기 위해서는 비개발자 뿐만 아니라 동료개발자도 설득해야만 했다. 나에겐 명확하게 보이는 것들이 많은 설득을 하거나 내 개인 시간을 할애하면서까지 품질을 유지해야 한다는 것이 이해가 되지 않았다. 오늘은 이런 여러 고민을 해결하기 ...
slack과 오픈커뮤니케이션
필자의 아이들이 다니고 있는 대안학교에서는 학부모간에 대화를 나눠야하는 일이 많다. 주로 텔레그램으로 대화를 나누고 있는데 회사에서 슬랙을 경험해 본 필자 입장에서는 텔레방이 너무 불편하고 복잡하게 느껴졌다. 그래서 종종 학부모나 선생님들에게 슬랙을 소개하고는 했는데, 막상 장점을 말하려니까 설명이 어려웠다. 다행히 관심을 가진 분들이 계셔서 슬랙을 학교 월례회의 때 소개할 수 있는 기회가 생기게 되었고, 나도 다시 한번 슬랙의 장점에 대해 생각해보는 기회가 되었다. 오픈 커뮤니케이션 도구로서의 슬랙오늘은 슬랙의 장점 중 필자...
wonderer
호기심으로 가득한 사람