본문 바로가기

Daily Life17

할 수 있는 것과 해야하는 것 지금 팀에서 일주일 단위의 짧은 스프린트 기간을 갖으면서 프로젝트를 진행하고 있다. 말이 일주일이지 주말을 제외하고 스프린트 플래닝이랑 회고, 도메인 용어 정리, 서버-클라이언트 인터페이스 협의 등의 회의를 하고나면 실제로 일할 수 있는 시간은 그리 많지 않다. (또 가끔씩 플래닝 때는 생각치도 못한게 튀어나올 때가 있기도하다...) 이런 짧은 시간을 주기로 일을 하다보니, 일을 할 때 할 수 있는 것과 정말 해야할 것을 구분하는 것이 중요함을 많이 느끼게 된다. 예를 들어 사용자가 어떤 데이터를 생성할 수 있는 기능을 추가한다고 하자. 그러면 생성한 데이터를 수정하는 기능도 생각할 수 있을 것이다. 데이터를 수정하는 것은 기술적으로는 크게 어렵진 않지만 - 해당 데이터를 생성 후 언제까지 수정할 수 .. 2022. 7. 17.
Simple is the Best 세상엔 어떤 문제를 풀기위한 수십가지 방법들이 있다. 그렇기에 개발자로서 우리는 무언가를 만들면서 "좋은" 결정을 내려야한다. 그러면 "좋은" 결정이란 무엇일까? 나같은 경우, 개발에서 "좋은" 결정은 요구사항을 충족시키면서 동시에 간단하고 이해하기 쉬운 것이라고 생각한다. 매 챌린지 마다 항상 우아하게, 복잡하게 갈 필요는 없다고 생각한다. 만약 '분산 시스템에서 Unique ID 생성하기'와 같은 주제를 찾아보았다면 아마도 Flickr의 Ticket Server 방식을 본 적이 있을 것이다. https://code.flickr.net/2010/02/08/ticket-servers-distributed-unique-primary-keys-on-the-cheap/ 이 방식은 동일한 년도에 발표한 Twit.. 2022. 5. 2.
구글은 어떻게 일하는가를 읽고... 지금과 같이 소프트웨어가 세상에 영향을 미치는 영향이 큰 시기에 제품을 만드는, 특히 스타트업에서 제품을 만드는 소프트웨어 개발자로서 구글이라는 성공한 빅테크 기업의 방식을 엿보는 것은 매우 흥미로웠다. 책에서 다루는 주제가 매우 넓기도하고(심지어 퇴사 희망자를 다루는 방법까지...) 내용도 많다보니 모든 내용을 여기에 적을 순 없지만, 책 뒤표지에 있는 목록(긍정의 문화를 세워라, 폐쇄보다는 공개를 기본으로 설정하라, 배움을 멈추지 않는 사람을 채용하라, 고개만 끄덕이는 인형을 조심해라, 계급이 아니라 관계를 형성하라, 일단 내어놓은 다음 개선하라)만 보더라도 충분히 흥미롭고 우리 조직은 어떤지 생각해볼만한 내용들이고 구글이라는 기업이 어떻게 일하고 있고 어떤 사람을 뽑으며 어떤 정책을 가지고 있는지를.. 2022. 3. 20.
스터디 회고 - 스프링 핵심 원리 기본편 오늘부로 약 3달간 진행했던 스프링 핵심 원리 기본편 스터디를 끝냈다. (예제 코드는 여기) 이전에 취업을 위해 학원 다니던 시절에 같은 조로 만나 연을 이어가고 있는 친구들과 같이 스터디를 하였는데 알기 지낸지 오래되기도 하였고 나를 포함하여 모두 같은 학원에 다녔고 SI도 경험해보며 경력을 쌓았기 때문에 여러가지 공감대가 많아 스터디를 진행하고 얘기하는 것이 보다 수월했던 것 같다. (그리고 전에도 같이 스프링 클라우드 스터디를 했어서 이미 합을 한 번 맞췄었다) 스터디는 기본적으로 인프런의 강의를 바탕으로 추가적으로 내가 관련하여 알고있는 부분과 경험을 덧붙인 내용으로 강의형 스터디로 진행되었고, 내가 내용을 설명하고 관련하여 질문을 답변하고 서로 경험을 이야기 하는 식으로 순서가 진행되었다. 이번.. 2022. 1. 16.
팀에도 보이스카우트 규칙을 지키도록 하자 클린코드에서 엉클 밥은 보이스카우트 규칙과 코드를 결합시켜 설명한다. The Boy Scout Rule : "Always leave the campground cleaner than you found it." 개발자로서 코드에 보이스카우트 규칙을 적용하는 것도 물론 좋지만, 더 나아가 같이 협업을 하는 팀의 일원으로서 이를 팀에도 적용해도 좋다고 생각한다. 팀이 겪고있는 문제를 개선한다는 것은 어쩌면 큰 일을 해야할 것 같이 거창해 보이지만 작은 노력으로도 충분히 개선할 수 있다. 애플리케이션 에러 트래킹이 힘들어 매번 뒤늦게 오류를 발견하는 경우 Sentry 등의 에러 트래킹 툴을 적용하고 Slack과 연동하여 오류를 빠르게 탐지하고 고칠 수 있다. (Sentry 클라우드 서비스를 사용하면 코드 몇 줄.. 2021. 12. 19.
개발자가 DX를 추구하면 안되는걸까 조직은 좋은 BM, 인프라, 인맥, 투자금 등의 배경이 탄탄하더라도 결국 팀이 중요하다고 생각한다. 자동화된 소프트웨어 기반으로 서비스를 운영하더라도 결국 무언가를 기획하고 만들어 가는 것은 사람이 하는 것이기 때문이다. 아무리 좋은 아이디어라도 이를 만들어가는 과정이 즐겁지 않고 감정 소모가 많다면 과연 좋은 제품으로 나올 수 있을까? 나는 무엇을 일하느냐도 중요하지만 그만큼 어떻게 일하느냐도 중요하다고 생각한다. 그런 점에서 최근에는 DX(Developer Experience)에 많은 관심을 두고 있다. https://developerexperience.io/practices/good-developer-experience Good Developer Experience TL;DR Do not forge.. 2021. 12. 12.