개발문화

힘의 분산

장재휴
남의 일이 아닌, 내 일 새로 합류한 3명의 동료 이야기다. 매일 아침 데일리 미팅을 하기로 했고. “어제 한 일, 오늘 할 일, 이슈” 딱 이 3가지만 공유하자고 했다. 이슈를 말하라고 했더니, 개발하면서 만났던 여러 어려움을 얘기한다. 그런건 이슈가 아니라고 했다. 이슈가 뭐냐면, 어제 하루 일을 시작하기 전 계획이 있었을 텐데. 하루를 살아보니 계획대로 안되더라 => 이건 당연한 거다.! 그래서 계획이 틀어진 상태로 오늘을 시작했는데, 계획과 실제의 공백이 너무 커져서 이번 주 목표에 차질이 생길 것 같다.

변화하는 동료들

장재휴
오랜만에 사무실 이야기다. 반년 전, 팀에서 코드 리뷰를 하자고 했을 때 동료들은 불편한 기색을 내비쳤다. 하지만 그들은 나의 제안을 따르는 것 말고는 별다른 방법이 없었다. 내가 코드 리뷰를 시작하기 전 먼저 했던 일은 gitlab runner를 사용해 배포 파이프라인을 구성해 놓는 일이었다. merge request를 만들고, 코드 리뷰를 거치고, 최종적으로 merge가 되어야 배포가 되도록 했다. 그리고 난 개발의 결과를 스테이징 환경에 배포된 것으로만 확인한다고 했다. 개인 PC에서 돌아가는 건 인정하지 않았다 ㅋ

진짜 문제를 풀어가는 과정

장재휴
오랜만에 사무실 이야기다. 중국 회사에서 일한 지 일 년 반 정도가 되었다. 한번 이직해서 지금은 두 번째 회사다. 이번 회사에서는 회의에 참여 할 때가 많은데, 주로 복잡한 문제를 풀어야 하는 설계 관련 회의다. 나는 아직 중국 친구들이 말하는 디테일한 내용까지 모두 다 알아듣지 못한다. 겨우겨우 이해해서 부족한 정보를 바탕으로 판단을 내려야 할 때가 많다. 자연스럽게 한 발 떨어진 관찰자 입장에서 판단을 내리게 되는데, 때론 이런 나의 입장이 도움이 될 때도 있는 것 같다.

시끌벅적한 사무실 만들기

장재휴
아주 작은 변화, 시작 <7월 1일> 새로운 회사로 이직한 지 2달이 지났다. 사무실 분위기는 꽤 시끌벅적한데. 개발자들은 입도 뻥끗 안 하고 심각한 얼굴로 모니터만 쳐다보고 있고, 고객과 소통하는 사람들의 전화 목소리만 우렁차다. 우렁찬 목소리에는 넘치는 자신감(?)과 회사 내에서의 위치(?)가 드러나는 것 같다. 개발자들은 식사할 때조차 입을 잘 열지 않는다. 나와 함께 일하는 몇몇 친구들에게 git으로 협업하는 방법을 설명해주고, 이번 주부터 gitlab의 Merge Request 기능을 써서 코드 리뷰를 하기로 했다. 이슈를 등록하고, 브런치를 만들고, 코드 작성 후 자신의 repo에 푸쉬하고, Merge Request를 만들고, 디스커션을 하고, 머지를 하는 과정을 보여주며 설명해주었다.

자연스러움

장재휴
코드를 작성하는 것은 정말 재미있는 일이다. 아주 작은 기능을 담당하는 작은 조각 하나를 만든다. 그런 조각을 2~3개 더 만들어 그것들끼리 연결을 지어놓는다. 이렇게 해 놓으면 꽤 많은 기능을 처리해낸다. 작은 조각 하나하나는 아주 단순한 몇 가지 기능만 할 뿐인데, 그런 것들이 2~3개만 모여도 꽤 다양한 기능을 해낸다. 2~3개의 조각이 모인 그것을 또 여러 개 만들어본다. 그리고 그것들이 상호 작용하게 한다. 서로 연결을 지어주는 것만으로, 훨씬 더 많은 기능을 담당하게 되었다.

익스트림 라이프

장재휴
너무 오랫동안 글을 쓰지 않았다. 그래서 머릿속에 이런저런 생각들이 두서없이 넘쳐난다. 두서없는 그대로 써내려가 본다. ㅋㅋ 다행이다 얼마 전 결혼 10주년이었다. 매해가 다이나믹 했지만, 특히 지난 일 년은 정말 다이나믹 했다. 출근하면서 이적의 “다행이다"를 듣는데, 눈물이 핑 돌더라. 내가 이적처럼 불러주지는 못하지만, 아내한테 노래를 보내주며, 함께 할 수 있어서 정말 다행이라고 얘기했다. 정말 다행이다. 성장 엊그제 퇴근하는데, 같은 팀 한 친구랑 우연히 지하철역까지 걸어가게 되었다. 처음 같이 일해보는, 중국말 엄청 어눌한 외국인이랑 20여 분 가량을 걸어가야 했는데, 딱히 할 말이 없어서였던지(ㅋ) 그 친구가 이렇게 물어보더라.

일하지 않는 사람은 가라

장재휴
2020-04-29 팝잇(popit)에 기고한 글 ⤴️ 이 글은 적당히 갖춰나간 운영 환경의 후속 글이다. 이전 글에서는 서비스의 외형적인 모습을 소개했다면, 이번 글에서는 그것을 가능하게 했던 내부의 문화를 소개한다. MSAMicro Service Architecture 이 삽질을 3년이나 하고 나서야 뼛속까지 알게 되었다. 이건 기술의 문제가 아니었다. 문화였고 일하는 방식이었다. 익스트림 프로그래밍Extreme Programming, 이하 XP이 소개된 지는 이미 20년이 넘었지만, 계속해서 XP를 얘기하는 이유는 MSAMicro Service Architecture는 일하는 방식과 떼어서 얘기할 수 없기 때문이다. 아주 많은 작은 서비스들에게 역할과 책임을 부여하고, 그 서비스들이 상호 작용하며 만들어낸 서로 공존하는 상태.