////
Search
🎙️

메쉬코리아 - 이현석 개발자님 (서버/백엔드 포지션)

개발자 커리어 점프 [점핏]! 개발자를 위한 직무 이야기를 전해드립니다.
개발자님의 직무 이야기
1. 담당하고 계신 업무를 소개해주세요.
메쉬코리아는 누구나 물류 인프라를 직접 소유하지 않고도 실시간/당일/새벽/익일 풀필먼트 등 모든 형태의 배송을 할 수 있도록 물류 서비스를 제공하는 회사입니다.
저는 상점이나 기업의 실시간 배송 요청을 처리하는 배송 서비스 서버팀에서 주로 라라벨을 이용한 백엔드 개발 업무를 맡고 있습니다.
2. 현재 회사와 지금의 직무를 선택하게 된 계기는 무엇인가요.
첫 번째로 평소에 함께 일해보고 싶었던 분들이 메쉬코리아에 재직 중이었습니다. 두 번째는 제가 기존에 경험해보지 못한 대규모 트래픽이 발생하는 제품을 보유하고 있었기 때문에 흥미와 관심이 생겼습니다. 마지막으로 세 번째는 육아와 가사 참여를 위한 자율 출퇴근제가 잘 운영되는 환경을 가지고 있었습니다. 그 외에도 수년간 매출이 크게 성장하고, 대규모 투자를 유치하는 등 기업의 성장성이 좋은 점도 마음에 들었습니다.
3. 하루 일과를 소개해주세요.
자율출퇴근제가 운영되고 있어서 매일 개인 일정과 회의 일정 등을 고려해서 출근합니다. 오후 2시에 데일리 스크럼을 진행하고 있어서 2시 이전에는 출근하는 편입니다. 출근하면 가장 먼저 전날 한 일과 오늘 할 일을 정리해서 공유하고, 별다른 이슈가 없다면 코드 리뷰를 가장 먼저 진행합니다
4. 업무를 하며 가장 보람을 느낄 때는 언제이신가요.
사무실 내에 각종 지표가 표시되는 큰 모니터가 있습니다. 종종 이 모니터에 표시된 지표를 보며 서비스가 성장하는 게 느껴질 때 가장 보람을 느낍니다. 또한 누구나 최고의 물류 시스템을 사용할 수 있게 한다는 회사의 방향성과 맞게 여러 업체와도 다양한 사업을 진행하고 있는데요. 개발에 직접 참여한 서비스가 출시되고, 그 소식을 언론 기사 등으로 접할 때 많은 보람을 느끼고 있습니다.
[메쉬코리아]의 개발이야기
1. 기획부터 개발까지 진행되는 프로세스
Product Owner 가 목표와 요구사항을 정리한 뒤 각 팀(Design, Frontend, Server 등)에서 할 일을 정의합니다. 이후 각 개발팀은 API 스펙을 작성하여 공유하고 이에 기반으로 하여 동시에 작업을 진행합니다. 진행 중에 발견되는 이슈들은 수시로 의견 교환이 이뤄지고, 이에 맞추어 결과물이나 일정이 조율되기도 합니다. 마지막으로 개발이 완료되고 나면 QA팀이 검수합니다. 위와 같이 일상적인 기획-개발 프로세스 외에 별도로 장기 프로젝트도 동시에 진행되곤 합니다. 이런 경우에는 이를 위한 팀이 따로 꾸려지는 편이며, 프로젝트 팀은 흔히 말하는 애자일 프로세스로 진행되는 경우가 많습니다.
2. ★개발 배포 프로세스를 소개해주세요.
개발 환경, QA 환경, 외부 연동사를 위한 테스트 환경, 상용 환경으로 나뉘어 있고 각 환경은 완전히 격리되어 있습니다. 로컬 환경은 도커로 팀원 모두 같은 설정을 유지하고 있습니다. 로컬에서 개발을 마치면 테스트 환경으로 올려 다른 팀과 연동 테스트를 합니다. 연동 테스트를 마치면 QA 환경으로 올려 검수할 수 있게 합니다. QA를 마치면 상용 환경으로 배포합니다. 상용 환경을 제외한 모든 환경은 특정 규칙으로 깃허브에 푸시하면 CI/CD를 거쳐 자동으로 배포됩니다. 상용 배포 역시 자동으로 프로세스가 진행되지만, 최종 단계는 수동으로 진행하게 되어있습니다. 배포 프로세스는 메쉬코리아 기술 블로그의 "CI/CD 도구 및 방법론 도입기(https://mesh.dev/20210208-dev-notes-002-ci-cd/)"에 잘 정리가 되어 있으니 자세한 내용이 궁금하신 분들은 한 번 들어가 보셔서 확인해보시는 것도 좋을 것 같습니다.
3. 우리회사의 개발 환경을 소개해주세요.
컴퓨터는 따로 제한이 있진 않지만 대부분 회사에서 지급한 맥북이나 아이맥을 이용해서 개발합니다. 저희 팀은 개발 언어는 PHP, 프레임워크는 라라벨을 사용하고 있습니다. IDE는 젯브레인의 IntelliJ를 공통으로 사용합니다. 로컬 개발 환경은 도커로 맞추고 있습니다. 이슈 관리는 지라를, 형상 관리와 코드 리뷰는 GitHub를 이용하고 있습니다. 배포는 젠킨스와 아르고 CD를 사용하고, 모니터링은 그라파나와 뉴렐릭을 활용하고 있습니다.
4. 개발 코드 리뷰문화가 있다면 소개해주세요.
리뷰어에게 충분한 정보를 제공할 수 있도록 PR 템플릿을 도입해서 활용하고 있습니다. PR 템플릿을 통해서 코드에 대한 배경이나, 주안점을 전달할 뿐만 아니라 배포전에 필요한 작업이나 영향도도 함께 체크하고 있습니다. 간단한 수정이 필요한 것은 Github의 suggest 기능으로 바로 코드를 제안합니다. 만약 심각한 버그가 아니더라도 의견이 다르면 Request change를 편히 요청하고 이에 마음 쓰지 않는 문화를 갖고 있습니다.
그 외로 바로 해결되기 어려운 코드 리뷰에서 제기된 이슈는 따로 모아서 주기적으로 논의하고 토론하여 규칙을 만듭니다.
5. 장애나 긴급상황에서는 어떤 프로세스로 대응하시나요.
장애나 이상 징후, 버그는 모두 슬랙으로 알림을 받고 있습니다. 지표 모니터링은 그라파나(Grafana)를 주로 이용하고, 장애 분석과 파악은 뉴렐릭과 센트리를 활용합니다. 알림이 지나치게 많거나 반복적으로 울리면 알림에 둔해질 수가 있어, 이를 항상 경계하며 운영하고 있습니다. 최근 C사의 서버 장애가 이슈화 되었을 때에도 지표 모니터링을 통해 선제적으로 대응함으로써 장애를 미연에 방지한 사례가 있었습니다.
6. 기술 도입이나 업무 영역의 확장이 자유로우신 편인가요.
개발자 위주의 팀 구성으로 창업한 회사여서 경영진 엔지니어링에 대한 이해도가 높은 편입니다. 그래서 실무자의 판단을 존중하는 편이며 필요하다고 생각되는 기술은 누구든 제안할 수 있고, 검토 후에 함께 사용합니다.
나의 개발 Tip
1. 개발을 위한 나만의 데스크 세팅!
저는 스탠딩 데스크, 인체공학 키보드, 버티컬 마우스 등 좀 요란하게 세팅해서 사용하고 있긴 한데요. 그중에서도 의자를 가장 중요하게 생각합니다. 디스크나 관절염 등으로 고생하는 사람들 이야기를 자주 듣다 보니 건강에 도움이 되는 아이템에 관심이 많은 편입니다.
2. 최근 가장 관심있는 기술스택(예, OS/ 언어) 은 무엇이며, 왜 관심을 가지게 되셨나요?
최근 TALL 스택에 관심이 생겼습니다. TALL 스택이란, Tailwind, Alpine.Js, Laravel, Livewire 의 약자를 딴 스택인데요. 작년부터 해외 라라벨 커뮤니티에서 화제가 되고 있습니다. 특히 Livewire를 사용하면 PHP로 프론트엔드의 인터렉션을 처리할 수 있어서 자바스크립트나 프레임워크를 따로 학습하지 않고도 웹 애플리케이션을 만들 수 있다는 점이 매우 흥미로워서 관심을 갖게 되었습니다.
3. 현재 하고 있는 업무의 역량을 키우기 위한 나만의 노력은 무엇인가요?
사내 개발 스터디에 꾸준히 참여하고 있습니다. 실력 있는 동료들이 이끌어주기 때문에 혼자 공부할 때에 비해 훨씬 많은 걸 배우게 됩니다.
또 관심 있는 강의나 도서, 컨퍼런스가 있다면 일단 사두고 보는 편입니다. 보는 속도보다 사는 속도가 빨라서 못 본 자료들이 점점 쌓여가고 있지만 언젠간 다 볼 것입니다. 그리고 학습 목적으로 콘텐츠를 생산하기도 합니다. 지금까지 '처음부터 제대로 배우는 라라벨'을 포함해서 개발서 두 권을 번역하고, 집필서 한 권을 썼는데요. 아무래도 공식적인 출판물이고, 유료로 판매하는 콘텐츠를 만드는 것이다 보니 한 글자를 쓰더라도 더 확실히 알고 쓰도록 노력하게 됐습니다. 비슷한 이유로 1일 1식 라라벨이라는 뉴스레터를 유료로 운영한 적이 있습니다. (145호까지 발행 후 중단, 지금은 https://xly.kr에서 무료로 읽을 수 있습니다) 지금 돌이켜보면 이때 참 많이 배웠던 것 같습니다.
우리회사는 개발자를 위해 이렇게 지원합니다.
함께 일하는 동료들을 소개해주세요! 우리 팀은 네임드 시니어와 실력파 주니어가 적절히 조화된 팀이라고 생각해요. 일례로 저의 오른쪽에는 '라라벨 빨간책'의 저자님이 앉아 계시고, PHP 개발자의 필독 글인 PHP Annotated를 번역해서 소개하는 ha-ah 블로그 운영자도 같은 팀에서 일하고 있습니다. PHP 커뮤니티에서 메쉬코리아는 문턱이 높은 회사 중 하나로 알려져 있습니다. 현재 팀에 계신 주니어분들은 시니어 TO를 포기하고 채용했을 정도로 뛰어난 실력을 갖추고 계십니다.
기술역량 향상을 위한 우리회사의 장점을 소개해주세요 비정기적으로 내부 교육이 이뤄집니다. 일반적인 기술 교육으로 AWS 같은 교육뿐 만 아니라 애자일 교육, 리더십 교육, 비즈니스매너 교육 등 직원들을 위한 이로운 교육들이 많이 이뤄지고 있습니다. 또한 업무에 필요한 교육이나 세미나는 회사에서 모두 지원해줍니다. 그리고 앞서 이야기한 것처럼 자발적인 스터디 조직이 잘 형성되어 활발하게 운영되고 있습니다.
추가로 소개하고 싶은 우리 회사만의 장점을 알려주세요! 다른 회사는 어떤지 잘 모르겠지만, 이 회사에 다니면서 놀란 점은 매우 협조적인 문화를 가지고 있다는 점입니다. 어떤 사안이 있을 때 팀에 관계없이 많은 분들이 협력해서 문제를 파악하고 해결하는 경우가 많았습니다. 서로 치열하게 경쟁한다기보다 서로가 서로를 지켜주는 조직이구나라는 생각에 안정감을 느낍니다. 일을 하다 보면 실수를 하게 마련이고 장애가 발생하기 마련인데요. 그런 일이 발생하면 책임자를 찾아 추궁하기보다는 재발 방지에 더 신경을 쓰는 문화가 있습니다.
메쉬코리아의 채용 포지션이 궁금하다면?! 점핏에서 확인해보세요
점핏에서 개발자로 취업하고 취업축하금 받으세요!