소은 (00:10) 안녕하세요. 다양한 경험과 경력을 가진 여성 엔지니어들과 이야기를 나누는 팟캐스트 우리들의 단짠단짠 이야기 테크 언니s 드디어 첫 번째 에피소드를 시작합니다. 첫 번째 게스트는 독일에서 소프트웨어 엔지니어로 일하시는 도연님을 모셨습니다. 도연님, 자기 소개해 주시겠어요?
도연 (00:31) 안녕하세요 저는 베를린에서 백엔드 개발자로 일하고 있는 박도연입니다
소은 (00:37) 독일에 언제쯤 오시게 되셨어요?
도연 (00:41) 재작년 (베를린에) 5월에 왔고, 일은 9월에 시작하게 돼서 이제 한 년수로, 일을 한 거는 1년 반 정도가 된 것 같아요.
소은 (00:51) 저희가 작년인가? 재작년에 뵜었잖아요? 그쵸? 그 다음에 계속 연락하고…
도연 (00:55) 그쵸 그죠. 거의 제가
독일에 오자마자 뵈었던 분 중 한 분이 소은님이었던 것 같아요.
소은 (01:04) 그래서 그때 뵀는데 진짜 시간 빠른 것 같아요. 요즘에는 어떻게 지내시고 계세요?
도연 (01:08) 맞아요.
요즘에는
그냥 평소대로 회사 잘 다니고 있고 그리고 지금 제가 하고 있는 프로젝트가 오프라인 결제라고 해서 기존에 있는 결제랑 다르게 와이파이 커넥션이 없는 상태라던가 시스템이 다운됐다고 가정한 상태에서 할 수 있는 결제 이런 걸 지금 프로젝트를 하고 있는 상태여서
이제 그거를 드라이브를 어떻게 할지 좀 생각이 많은 상태에요. 그래서 일을 조금씩 조금씩 더 하고 있어서 좀 바쁜 것 같아요. 요즘은.
소은 (01:52) 그러면 도연님 회사명 얘기해도 되나요?
도연 (01:56) SumUp 이라고 독일의 핀테크 회사에서 일을 하고 있고요. 제가 있는 부서는 카드 결제 리더기를 만드는 회사인데 다양한 일을 하고 있어요. 굳이 비유를 하자면 독일의 토스 같은 회사에서 일을 한다고 생각하시면 됩니다.
소은 (02:16) 제가 독일에서 생활하면서 도연님 회사 카드 리더기 진짜 많이 본 것 같아요.
도연 (02:23) 아
그렇죠 아마 유럽여행 하시면 간혹가다 작은 가게에 가시면 하얀색 박스로 된 작은 리더기를 보시거나 혹은 결제를 하는건데 되게 작고 하얗고 이러면 보통 저희 회사 제품인 경우가 맞습니다
소은 (02:42) 그래서 독일 살다 보면 현금으로 내야 하는
한데 카드로 결제할 수 있을까요? 여쭤보면 그때 도연님 회사 카드리더기를 들고오시는.. 그런 케이스를 좀 많이 본 것 같아요
도연 (02:49) 맞아요
그렇죠 그렇죠 아쉬운
표정으로 보통 들고
소은 (03:04) 매일매일 출근을 하시는 건지 아니면 집에서 재택을 하시는 건지 그것도 궁금하거든요.
도연 (03:12) 저희는 이제 원래는 한 3일 정도는 일주일에 3일 정도는 출근을 하는 형태였는데 그것마저도 이제 전체 출근으로 바뀌어서 그렇게 바뀐 한 세 달, 네 달 된 것 같아요. 지금은 매일 출근을 하고 있고 뭐 특별한 일이 있으면 그냥 나 오늘 집에서 일을 하겠다 하고 일을 하고 있습니다.
소은 (03:34) 그러면 아이를 돌봐야 하는 상황이거나 택배를 받아야 하는 상황이거나 약간 이러면 그렇게 할 수도 있겠네요.
도연 (03:43) 뭐 독일의 배송 서비스 그렇게 좋진 않잖아요. 이제 오늘 이케아에서 배송이 온다. 해놓고 그냥 이제 배송을 받기도 하고 집에서 그러면 이제 재택을 하는 거고 뭐 사실 사유라는 게 다 다르잖아요. 그런 게. 그래서 그냥 뭐 크게 막 엄청 중대한 사안이어야 재택을 할 수 있다. 그런 건 아닌 것 같아요.
소은 (04:09) 어 그거 되게 유연성이 있어서 좋은 것 같아요. 상황에 따라서 재택하고 싶다라고 말하면 재택할 수 있게 해주고
도연 (04:16) 임원급들은
어떻게 생각할지 모르겠지만 저희끼리는 일단은 그렇게 생각하기로 그런
소은 (04:24) 또 한 가지 궁금한 게 도연님의 회사 사무실에 딱 들어가면 도연님 회사 책상의 모습은 어떤지 좀 궁금한 것 같아요.
도연 (04:35) 이제 보통 엔지니어 하면 보통 기계식 키보드 이렇게 막 있고 그러잖아요. 저도 그랬던 적이 있었는데 독일 오면서 다 그런 게 사라졌고 왜냐면 이제 이사를 와야 되니까 포기할 수 있는 것들을 좀 포기했어요.
소은 (04:49) 아 맞아요 저도 독일 오기 전에 중고나라에 좀 팔았던 것 같아요
도연 (04:54) 그렇죠 그렇죠. 그렇게 되죠. 지금은 회사에서 주는 것들로 그냥 키보드 따로 쓰고 키보드도 원래 따로 썼다가 그냥 맥북 키보드를 쓰고 있고 마우스도 따로 썼다가 그냥 맥북 쓰고 있고 모니터 하나 있고 그리고 저희가 결제 시스템을 만드니까 디바이스들이랑 백엔드랑 어떻게 통신하는지 확인을 하려면 기계들이 되게 많아야 돼요.
제 책상에는 카드 단발기가 한 6개쯤 테스트용으로. 그렇죠. 맞아요. 그리고 테스트용 한 6개 있고, 프로덕션용으로 하나 있고, 이제 테스트카드. 카드 사별로 한 장씩 있어서 두툼하게 쌓여 있습니다. 그런 카드 사별로 있고,
소은 (05:35) 테스트카드가 있어서 그걸로
도연 (05:39) 그 옆에 이제 제 가방 놓고 그리고 제가 땅콩버터를 되게 좋아해서 땅콩버터 한 단지가 딱 이렇게 놓여있어요. 이제 사과, 사과 저희 회사가 이제 중앙에 이제 키친이 있고 거기 이제 테이블이랑 음료수 냉장고랑 과일이랑 막 있어요. 그럼 거기서 이제 사과 가끔씩 썰어서 접시에 담아서 이제 그 땅콩버터랑 같이 먹습니다.
소은 (05:47) 그러면 드시면 일하시면서 딱
소은 (06:05) 땅콩버터랑 사과랑 업무의 효율을 많이 높여주나요?
도연 (06:09) 아 그럼요 이제 수시로 당이 떨어지니까 이거는 진짜 만국 공통인게 어떤 개발자든 일을 하다가 디버깅 하다가 힘들면 단 걸 찾더라구요. 이제 그 단 거를 늘 사다 놓는 동료들이 또 가서 하나씩 달라고 물어보고
독일이 또 이제 초콜릿이 맛있잖아요. 그래서 이제 다들 초콜릿을 그렇게 사다놓고 좀 건강하게 먹는 동료들은 견과류를 사 먹더라고요. 그렇더라고요.
소은 (06:36) 아 도연님 책상 셋업 얘기하다가 땅콩버터가 나올 줄 몰랐어요
도연 (06:40) 다들 그런 간식 하나쯤은 있지 않을까요?
소은 (06:44) 일하다가 갑자기 땡겨서 어디 냉장고 열어보고 이러거든요. 그렇구나. 현재 도연님 일하시는 팀의 구성은 어떻게 되시나요?
도연 (06:57) 저희는 이제 한 사람이 두 개의 조직에 소속되어 있는데 하나는 스쿼드 흔히 얘기하는 다양한 직군에 있는 사람들이 cross-functional 하게 일을 한다고 하잖아요. 디자이너, 저희는 embedded 개발자, mobile client, back-end, PM 이런 식으로 소속된 스쿼드 단위로 일을 하고 있고
그리고 이제 백앤드 개발자들은 혼자 일할 수가 없으니까 저희 챕터에 또 소속이 되어 있어요. 그 두 개의 아이덴티티를 갖고 일을 하고 있습니다.
소은 (07:32) 그래서 총 부서에 몇 명 정도 있나요?
도연 (07:37) 아 일단 스쿼드는 되게 그 저희가 맡은 OKR에 따라서 때때로 다른 스쿼드에서 리소스를 빌려오고 그래요. 뭐 예를 들어서 이번 OKR은 디자인 테스크가 있는데 저희 스쿼드에 만약에 디자이너가 지금 없다 그러면 다른 스쿼드에서 디자이너가 이제 옮겨와서 일을 하고 그런 식이어서 기본은 한 8명 정도 일을 하는데 경우에 따라서 좀 주로 한두 명 빠지기도 하고 한두 명 더해지기도 하고
소은 (08:06) 되게 유동적이네요
도연 (08:07) 맞아요
맞아요 좀 자유롭게 일을 하는 편이고 그래서 PM들이 이제 OKR 관련된 미팅 있을 때마다 서로 그런 리소스에 대해서 협상을 하기도 하고
소은 (08:19) 그때 협상할 때 그 PM 분들이 협상할 때 좀 약간 경쟁이
도연 (08:26) 네 좀 있죠
있죠. 이제 PM분들은 결국에는 이제 어떤 과제를 더 우선순위에 둘 것이냐에 따라서 그 자원을 가지고 어떻게 협의가 이루어지는데 이제 아무래도 다 자기 과제가 제일 중요하잖아요. 성과를 만들려면 그런 부분에 좀 애로사항이 있죠. 백엔드는 저희가 지금 저희 같은 경우는
브라질에도 또 백엔드 개발자들이 있어요. 임베디드도 있고 기술 조직이 브라질에도 지금 있는 상태여서 브라질에 한 5명 정도가 있고 백엔드가 5, 6명 정도 있는 것 같고 베를린에는 지금 베를린에도 한 4명, 5명 이렇게 있는 것 같아요. 그래서 다 하면 한 8명, 10명? 8명 이렇게 되는 것 같아요. 정확한 수가 기억이 안 나네요.
브라질에 한 명 있고 주니어 여성 개발자 한 분도 있어서 개발자로는 여자는 3명 정도 있어요.
소은 (09:30) 그 현재 도연님이 하시고 있는 일에서 어떤 언어? 프로그래밍 언어라든가 어떤 프레임워크 사용하시나요?
도연 (09:42) 이제 특이하게 함수형 언어인 Elixir를 쓰고 있고 이제 한 작년 말부터 Elixir 개발자 찾는 게 너무 힘들다 그래서 이제 그 프로젝트를 좀 도입하기 시작했어요
소은 (10:00) 그러면 기존에
있었던 Elixir에서 Go로 전환을 하시는 건가요? 일부 프로젝트를 고로 하시는 건가요?
도연 (10:09) 사실 일부 프로젝트를 전환하는 것도 좀 어렵잖아요. 그것도 시간과 비용이 드는 일이기 때문에. 일단 새로 시작하는 프로젝트면 Go로 작성을 하고 있는데 그것도 사실은 어쨌든 저희 주언어가 Elixir이기 때문에 결국에 만약에 제가 새 프로젝트를 시작하게 됐는데 아 나 그냥 Elixir로 쓰고 싶다 하면은 아무도 말리지 않습니다.
저희 매니저도 Go로 하겠다고 결정을 한 게 참 좀 민주적인 의사결정 우리는 Go 해보고 싶다 해서 그래 그럼 고 하자 했는데 매니저가 이게 맞나? 생각이 좀 드는 것 같아요 요즘은. 그래서 왜냐하면은
언어마다 장단점이 분명히 있고 그리고 이제 모두가 해본 언어가 아닌 상태에서 새로운 언어를 도입하는 게 뭔가 그렇게 막 민주적으로 한다고 해서 꼭 정답인 건 아닌 것 같더라고요. 그냥 이제 회사가 앞으로 어떤 사람들을 채용할 것인지 그리고 우리가 이걸 어떻게 메인테인 할 건지 이거와 또 연관이 있는 의사결정이기 때문에
매니저는 아 그걸 그냥 코틀린을 할 걸 그랬나보다 이런 얘기도 하더라고요. 왜냐하면 저희 이제 어 안드로이드 플랫폼에서 또 개발하는 프로젝트들이 있기 때문에 백엔드가 만약에 코틀린을 또 안다면은 어 뭔가 그런 부분에서 서로 시너지가 좀 나지 않을까 이런 고민도 좀 하고 그런 것 같아요.
소은 (11:38) 제가 예전에 제 아는 친구가 어떤 회사에 다녔었는데, 거기가 한국에서 찾기 힘든 케이스이긴 한 것 같은데, 그 부서 자체가…
Elixir를 사용을 했었데요. 그 CTO 분이 Elixir 사용하는 걸 되게 좋아하시기도 하고 그걸 추진력 있게 밀고 나가셨는데 친구 입장에서는 Elixir 사용하는 거 되게 좋았대요. 제가 구체적으로 왜 좋았는지 안 들어봤지만 자기 너무 좋다 라고 얘기를 했는데
이제 CTO분이 나가시고 새로운 CTO분이 오시면서 그 다시 코틀린으로 다 바꾸는 작업을 했는데 친구가 조금 약간 고통스러워 특히나 Elixir라는 언어를 되게 좋아하는 친구였는데 다시 바꾸는 작업도 해야 되고 힘드니까 너무 아쉬워하고
도연 (12:26) 맞아요 맞아요 맞아요
소은 (12:36) 친구가 그 과정에서 배웠던 것들 이런 거 너무 재밌었다고 얘기를 해줘가지고 도연님은 Elixir 언어를 어떻게 접하게 되셨나요?
도연 (12:49) 저는 이전에 일했던 회사 중에 카카오 엔터프라이즈라는 회사에서 그때 서비스를 만들 때 Elixir를 해서 이제 제가 그 회사가 Elixir를 쓴다는 거는 알고 있었지만은 Elixir를 해야겠다 해서 입사한 건 아니었거든요 그냥 이제 좀 뭔가 새로운 걸 좀 해봐야겠다 나도.
왜냐하면 그 당시 제가 그 회사 입사하기 전에 이제 주니어 뭔가
첫 코스를 마친 그런 정도의 상태였거든요. 서비스 한번 만들어 보고 피처 같은 거 몇 개 만들어 보고 실제 운영 환경에서 어떻게 돌아가는지 보고 거기에 뭐가 필요한지도 좀 생각해 보고 이런 기초적인 어떤 과정을 수료한 다음에 아 이제 나는 시니어가 되고 싶다. 이제 나 시니어가 될 준비가 된 것 같은데 이럴 때쯤에 딱 회사를 찾기 시작한 상태였어서 그때 이제
여러가지 제 어떤 교육에 대한 갈증, 새로운 거에 대한 갈증 그런 거를 해소할 수 있는 팀이었어서 이제 그 팀에 조인을 하게 됐고 거기서 이제 Elixir를 접하게 됐어요.
소은 (14:01) Elixir의 어떤 점이 사용하시면서 좋으신 것 같아요?
도연 (14:07) 뭔가 일단 제일 먼저 떠오르는 거는
병렬 처리를 하는 것들, 그러니까 상태를 갖고 그 상태를 끊임없이 변화시켜 나가면서 처리를 해야 되는 것들 특히 요즘 같은 경우는 백엔드는 분산 처리 환경이니까
여러 개의 서버 인스턴스가 다양한 요청을, 한 가지 자원에 대한 다양한 요청을 처리해야 되는 경우가 많잖아요. 그럴 때 그걸 보통은 데이터베이스에 넣고 처리를 하는데 Elixir는 그걸 프로세서라고 해서 하나의 어떤 상태를 메모리에 넣어두고, 그걸 다양한 노드에서
저희는 노드라고 하는데 서버 인스턴스에서 처리할 수 있게 하는 설계가 되게 잘 되어 있어요. 그런 거를 정말 복잡한 이해 과정 없이 코드를 시간을 들여서 분석하지 않고도 어느 정도 이 개념에 대한 숙지가 되어 있으면
아 여기가 이렇게 하고 있구나 이런 분석과 파악이 굉장히 쉽고 또 변경도 자유롭고 상대적으로 왜냐하면은 제가 다른 언어를 그 정도로 깊이 있게 해보자 해서 말할 수 없지만은 제가 이제 그래도 공부를 하면서 느꼈던 것은 굉장히
제가 단어가 생각이 안 나는데, explicit 하다고 하잖아요. 보여지고 분명하게 나와 있어서. 직관적이다? 그렇죠. 그렇게 표현하면 좋은 것 같아요. 그런 언어인 것 같아요. Elixir는
소은 (15:35) 명확하다
제가 도연님하고 오늘 팟캐스트 하기 전에 좀 리서치 때 만드신 분이 루비온 레일즈 코어 컨트리뷰터 커밋터 라고 해야 하나? 아무튼 그 커밋터이셨다가
도연 (16:06) 네네.
소은 (16:08) 아주 번아웃이 와가지고 쉬는 동안
이 Erlang에 빠져서 Elixir라는 걸 개발하셨다고 하더라고요 저 같으면 번아웃 와서 쉬면서 어디 좀 여행이나 갈까 집에서 왜 누워있거나 약간 그럴 수 있는데 쉬면서 Erlang이라는 언어에 빠지셔서 이 Elixir라는 걸 만드셨다고 하더라고요
도연 (16:13) 네
소은 (16:33) 아 대단하신 분이구나 하면서 또 Ruby의 영향을 받았다고 들었어요
도연 (16:35) 파이썬과 비슷한 탄생설을
이런
저도 그렇게 알고 있어요. Ruby를 하지 않아서 잘 모르겠지만 웹 서비스 만드는 방식이 비슷하다고 들었던 것 같아요.
소은 (16:53) 그럼 제가 알기로는 Elixir에도 프레임워크가 있는 걸로 알고 있는데 어떤 프레임워크를 사용하시나요?
도연 (17:00) Phoenix라고
하는 프레임워크를 쓰고 있어요.
소은 (17:05) 뭐 뭔가 이전에 Elixir를 배우시기 전에는 어떤 언어를 사용하셨었나요?
도연 (17:14) 그전에는 제가 C#을 했었어요.
소은 (17:15) C#을
하시다가 Elixir라는 걸 사용하시고, 클로저라는 언어도 사용하시고
도연 (17:26) 아
맞아요 맞아요 클로저도 잠시 했었죠
소은 (17:29) 함수형 언어로 넘어가시면서 뭔가 조금 달랐던 점? 아니면 뭔가…
나는 뭔가 이런 언어가 좀 더 좋은 것 같더라? 좀 새롭게 발견한 점? 이런 것들이 있을까요?
도연 (17:44) 어 일단 되게 많이 달랐는데 어 저는 비유를 하자면 C#은 일단 그 플랫폼이 괭장히 그
리치해요 정말 정말 많고 왜냐하면 아이디 같은 경우도 약간 요즘에는 코파일럿 같은 게 있지만은 그 당시에는 그런 것도 없었으니까 제가 이제 썼던 당시에는 그래서 이제 막 모듈 같은 거 만들면은 뭐 모델이랑 컨트롤러랑 뷰랑 이런 것들 만들려고 하면은 이제
IDE가 알아서 다 해줬거든요. 디자인 같은 것들이 좀 정해져 있으니까 C#은 그런 걸 하려고 하면은 알아서 원하는 것들 딱딱 바꿔주고 나는 거기서 필요한 로직만 구현하고 이런 편의가 있었어요. 이제 Elixir 하면서는 일단
코드를 찾아가려면 내가 일단 처음부터 폴더 구성을 잘 해놔야돼요. 왜냐하면 이게 물론 이제 뭔가 컴파일러 같은 거를 아이디에 잘 세팅을 해놓으면 그 이후부터는 좀 나은데 초반에는 이제 막 모듈을 선택해도 잘 안 들어가지구
그런게 있었는데 이거는 당연히 저는 제 생각에는 이제 지원을 어떻게 받느냐에 차이 좀 있는 것 같아요. C#은 마이크로소프트 서포트가 있으니까 근데 이제 Elixir는 그런 일단 어떤 사용자적인 측면에서 그런 차이가 있었던 것 같고 그래서 어떤 느낌이었냐면 제 생각엔 C#은 좀 지하철 타고 돌아다니는 느낌이면 Elixir는 자전거 타고 다닌 느낌이에요.
따라서 자전거로 가는 게 더 빠른 경우도 있잖아요. 왜냐하면 저는 이제 많이 숙달이 됐으니까 이제 리팩토링 같은 걸 하려고 하면은 사실 C#으로 만약에 리팩토링 한다고 하면은 좀 힘들거든요. 왜냐하면은 막 바꿀 때 정신이 없거든요 진짜.
근데 이제 Elixir 같은 경우는 내가 이제 구성을 딱 잡아놓고 작성한 코드들이니까 오히려 좀 그리고 가벼운 느낌이 있죠 왜냐면은 C#은 IDE 있을 때마다 계속 이제 뒤에서 컴파일러 돌리면서 모듈 끼리 레퍼런스 다 잡아놓고 하니까 조금 막 리팩토링 하면 좀 늦어지고 그런 것도 있거든요 근데 Elixir는 그러면서 훨씬 자유롭죠
소은 (20:24) 어떻게 어떤 느낌인지 좀 실제로 뭔가 사용해보고 싶어지는 느낌이 생기는 것 같아요
도연 (20:32) 물론 함수형인 언어랑 객체지향 언어라는 차이도 있지만 그거는 정말 그 둘의 차이는 뭔가 얘기를 하면 정말 밑도끝도 없이 얘기할 수 있는 주제라서 일단 제가 말씀드리고 싶은 건 그런 부분이었습니다. 사용하면서 느꼈던 큰 차이.
소은 (20:50) 제가 베를린 엔지니어링커뮤니티 찾아보면서 일렉서 커뮤니티가 되게 활발하더라고요. 주기적으로 계속 밋업을 열려고 노력을 하시더라고요. 저번에 연말에
이벤트가 있었는데 우리 이벤트에 Ruby 사용하는 사람도 껴줄게. Ruby 사용하는 사람도 와봐. 해서 회사에서 Ruby 사용하거든요. 그래서 갈까 말까 좀 고민을 하다가 일정이 안 돼서 안 가긴 했는데 그때
예전에 베를린 오고 나서 얼마 안됐을 때 한번 커뮤니티에서 하는 밋업 갔었는데요. 괜찮았어요. 좀 분위기도 편하고 사람들 여러가지 주제로 하고. 그래서 도연님도 혹시 뭔가 베를린에서 열리는 밋업 같은거, 가끔씩 가시고 그러신가요?
도연 (21:45) 네
저도 가끔 갔는데 가면 일단 되게 재밌어요 왜냐면은
저는 한국에서 Elixir 하시는 분들을 보면 되게 반가웠거든요. 네 그런 걸 이제 여기 와서 느끼고 그냥 그리고 그런 생각이 들어요. 내가 이걸 느끼는데 너도 느끼지 않을까? 그런 생각이 들면은 되게 기분이 좋고 그냥 같은 언어하고 뭐 너네 회사는 어떻게 해? 이런 얘기도 좀 듣고 그런 게 좀 좋았던 것 같아요.
소은 (22:20) 얘기 사용자가 많은 언어가 아니다 보니까 그래서 만나면 되게 반가울 것 같아요. 노하우도 얻게 되고.
도연 (22:27) 사실 그렇게 깊이 얘기할 시간은 없어요. 거의 가면 발표하는 거 듣고 네트워킹 한다고 해도 서로 어떤지만 얘기하고 끝나는 경우가 많으니까 나는 누구고 어디서 왔고 어느 회사 다니고 거기서 뭐하고 몇 년 됐고 이런 얘기하고 나면 사실 거의 시간이 좀 너무 늦거나 그래서
맞아요 맞아요 맞아요. 저 이제 퇴근했으니까 내일 또 출근하려면 일찍 들어가야 돼서 오래 머물게 되진 않더라고요.
소은 (22:59) 그 일렉서 컨퍼런스도 이번 년도에 몇 개 열리더라구요. 그래서 하나는 그 일렉서 컨프라고 해서 폴란드에서 열리는 것 같은데 거기 보니까 일렉서 만든 분도 오시더라구요.
도연 (23:16) 네
소은 (23:16) 작년에
10월인가 11월에 코드빔이라고 베를린에서 열려가지고 제 파트너가 또 일렉서 사용해가지고 가서 좀 구경하고 이랬는데 되게 재밌었다고 하더라구요. 생각보다 사람들 많이 있었고
도연 (23:21) 맞아요
저도 거기 갔어요 코드빔 코드빔 가셨어요? 저도 그게 약간 의문이네요 지금 왜 못봤지? 아 진짜요? 거기 동양인 거의 저밖에 없어서 한두 번 뵈었나? 되게 없었거든요 그래서 그렇구나 그냥 이러고 말았는데
소은 (23:50) 아 그렇구나
그러게요 제가 한번. 이번 연도도 가실 계획 있으신가요?
도연 (23:57) 이번 연도는
안 가려고요. 일에 집중하고
소은 (24:03) 아까전에 도연님 회사에서 일렉서 사용하면서 사람 채용하기가 좀 어렵다고 하시니까 풀이 작아서 그런거죠? 그것도 좀 이해 되는 것 같아요.
도연 (24:17) 근데
사실 잘 모르겠어요. 이제 채용 담당자로 두 번째로 일을 하는 회사인데 지금 사실 Elixir 경험 자체는 그렇게 중요하게 생각 안 하거든요. 뭐 Erlang 경험이 있어도 괜찮고 그냥 결국에는 문제 해결하는 방식 그런 걸 훨씬 더 중요하게 봐서
물론 경험이 있는 분들이 온다면 온보딩 수고가 적으니까 그런 장점이 있지만 저도 Elixir를 회사 다니면서 배우게 되었기 때문에 사실 막 정말 그런가 하는 데는 조금 의문이 있어요 그냥 잘하시는 분들은 새롭게 언어 시작해서 하시더라도 잘하시더라고요.
네, 그냥 좋은 분이면은 그런 분들 찾는 게 채용의 목적이면 그건 당연히 그냥 힘든 거가 맞고 꼭 언어때문에 채용이 어렵다 라고 얘기하는 거는 저는 조금 다른 생각하는 부분이 있는 것 같아요.
소은 (25:21) 제가 아는 지인분 중에 Elixir를 회사 메인 언어로 지정하신 이유가 Elixir는 엔지니어들 사이에서 사용하는 사용자 풀이 좀 적다 보니까 이 언어를 좀 좋아하고 좀 사용하고 관심있어하는 사람들을 뽑으면 회사에서 일할 때 좀 더 재밌어 하지 않을까 라는 관점에서 그 언어를
메인 언어로 사용하셨다고 하더라고요. 근데 그분도 물론 Elixir라는 언어를 좋아하시기도 했고요.
도연 (25:57) 너무 좋은 생각인 것 같아요.
소은 (26:00) 지금까지는 도연님의 회사 이야기 그리고 이제 Elixir 이야기 좀 많이 얘기 나눴던 것 같은데 도연님이 이제 엔지니어로 일하신지 몇 년 되셨어요?
도연 (26:15) 제가 2017년 7월에 첫 회사를 입사했거든요. 그러면 거의 몇 년… 그리고 제가 한 중간에 이제 공백도 좀 있었어요. 6개월 정도? 그렇더라도 그냥 공백까지 계산하면은 지금 2025년이죠. 그렇죠 그렇죠. 그 정도 되는 거죠.
소은 (26:19) 2017년이요?
도연님이 엔지니어가 되기로 마음 먹은 계기는 어떻게 되세요?
도연 (26:47) 저는 처음
회사를 2017년에 입사한 거는 엔지니어로 입사를 한 거고 16년에 잠깐 다닌 회사가 있었는데 IT회사였어요. 거기서 경영기획실에 있었는데 그 당시에 개발자분이랑 일을 했던 적이 있었는데 회의할 때 명쾌한게 너무
하는 일은 되게 뭔가 구조화하기 어렵고 뭔가 뚜렷한 해결 방식을 찾는 일은 아니었어요. 왜냐하면 사람에 대한 일이기 때문에 엔지니어링이랑은 다른 문제였고 근데 이제 막상 개발자 분야 일을 할 때는 너무 분명하고 옵션이 항상 주어지고 그런 게 되게 좋아 보였어요. 그리고
제가 원래도 컴퓨터랑은 그렇게 멀지 않은 사이였고 저는 이제 막 어렸을 때 이제 게임 같은 거 하고 싶잖아요. 부모님이 잘 안 사주시잖아요. 제가 그런 해적판 게임 같은 거를 막 데몬으로 돌려서 하고 그런 그랬던 게 있어서 이제 컴퓨터랑도 그렇게 안 친하지도 않겠다. 해볼만 하지 않을까? 그리고
소은 (27:44) 그래요?
도연 (28:05) 사실 그런 것도 있었어요. 개발자 일을 하면 외국에서 일을 할 수도 있지 않을까. 약간 제 모든 성향이랑 이런 게 꿈과 성향 이런 게 다 얼라인이 되어 있었어요. 개발자를 하는 게. 과감하게 전향을 했죠. 저는 개발자로
소은 (28:11) 선구안이 있으셨네요.
되게 스토리가 선구안이 있는 결정이셨네요. 지금 딱 베를린에도 와 계시고
도연 (28:36) 아 그렇죠.
결과적으로는 생각했던 대로 된 케이스죠. 일도 잘 맞았고 외국에서도 일을 하게 됐고 그래서 자기 성향을 잘 알고 있었던 것 같아요.
소은 (28:50) 좋은데요?
그러면은
도연님 지금까지 엔지니어로 일하시면서 여러가지 프로젝트를 하셨을 거고 어떤 뭐 힘들었던 버그들도 있었고 디버깅하기 어려웠던 버그들도 있었을 거고, 피쳐 개발도 있었을 거고, 코드 리펙터링 과정도 있었을 거고, 다양한 과정이 있었을 텐데 도연님이 생각했을 때 이건 되게 엔지니어로서 뿌듯했었다 이런 것들이 있으신가요?
도연 (29:19) 저는 힘든 프로젝트와 뿌듯한 프로젝트가 같은데 사실 디버깅하고 피처만들고 어려운 이슈 해결하고 이런 거는 늘 하는 일이잖아요. 막 정말 돌이켜 생각해서 이 순간이 정말 기억에 남았어 이런 건 없지만 프로젝트는 기억에 남거든요 항상.
소은 (29:37) 그렇죠.
맞아요 그렇죠.
도연 (29:46) 그래서 저는 카카오 엔터프라이즈에서 기업용 메신저 만드는 프로젝트 했던 게 정말 힘들었고 동시에 정말 뿌듯했어요.
힘든 점은 이제 아무래도 런칭을 하는 거니까 트래픽이 없는 상태에서 프로젝트를 만드는 거잖아요. 그게 진짜 재밌어요. 왜냐하면 내 마음대로 막 할 수 있거든요. 뭐 이거 해보고 이렇게 해보고 싶은데 뭐 이거 이렇게 하면 좋지 않을까? 뭐 이런 생각도 되게 많고 왜냐하면 기존에 있는 프로덕트에 뭔가를 도입하려면 그 프로덕트에 있는 어떤 규칙들을 잘 파악해서 기능을 넣어야 돼요. 뭐 하물며 변수명이라던가 뭐
기능 자체가 돌아가는 방식이라던가 그 기존에 있는 디자인을 최대한 깨지 않으면서 넣어야 되거든요 그런데 이제 처음 하는 프로젝트니까 정말 깨끗한 백지에서 시작하는 프로젝트라 잘 하고 싶은 마음이 되게 많이 들고 그래서 그래서 힘들었던 것 같아요. 잘 하고 싶고 동시에 데드라인은 있고 하지만 피드백도 없고 왜냐면 런칭을 하면서 이제 막 트래픽을 보면서 하는 게 아니었으니까
그래서 힘들고 재밌었던 것 같아요.
소은 (30:55) 그 과정에서 뭔가 배우게 되신 것들도 있나요? 뭔가 힘들었던 프로젝트 하시면서?
도연 (31:02) 저는
당연히 기술적으로도 많이 배운 부분도 있지만 제일 많이 배웠던 건 사람들이랑 어떻게 일을 하는지 그게 있어요. 약간 제가 그때 이제 주니어에서 시니어로 성장하는 프로젝트라고 저는 생각하거든요 그게. 이게 약간 그런 게 있어요. 주니어 때 내가 했던 행동들? 내가 되게 앙큼하게 막 제안했던 것들. 뭐 이거 이렇게 하고 싶다. 나 이렇게 할 거다. 나 이 일 다 해낼 수 있다. 막 이러면서 했던 것들이
사실은 정말 좋은 시니어분들이 놀이터를 만들어줬을 때 하는 거잖아요. 그걸 나중에 생각을 해보면 인내심 많은 시니어분들과 일을 해서 이런 시행착오를 마음껏 겪을 수 있었구나. 그런 생각이 좀 들어요.
소은 (31:41) 네, 되게 공감되는 것 같아요.
좋은 표현같아요. 그런
놀이터를 만들어줘서 여러가지 쉽게 제안을 할 수 있게 그런 분위기도 만들어주는 그런 시니어분들은 같이 일하면 배우는 것도 많고 나중에 생각해봤을 때 감사한 것 같더라고요
도연 (32:07) 맞아요
할때는 잘 몰라요. 일을 내가 쳐낸다고 생각하는데 막상 돌이켜보면 결국에는 시니어분들이 뭔가 복잡해질 수 있는 문제들을 다 쳐내주고 좀 깔끔하게 정리된 상태에서 일을 하게 되니까 그게 나중에 눈에 들어오게 되는 거죠.
소은 (32:30) 저도 엔지니어로서 뭔가 일을 하면서 느껴지는 것 중 하나가 막 되게 고마운 분들이었구나. 나는 뭔가 생각없이 막 말하고 제안했는데 그때 그렇게 되게 재밌게 재치 있게 받아주셔서 너무 감사
도연 (32:38) 맞아요 맞아요
소은 (32:49) 드리는다는 그런 생각이 드는 같아요. 그래서 제가 했던 얘기들이나 뭐 생각하면 막 가끔씩 이불킥 하고 싶어지고.
도연 (32:56) 맞아요
맞아요
소은 (32:58) 그런
경향이 살짝 있는데 그래도 그 표현 되게 좋은 것 같아요. 놀이터를 만들어주고 열심히 제안해보고 할 수 있는 분위기 만들어준 시니어분들?
도연 (33:11) 그런 이불킥 하는 순간들이 결국에는 내가 조금은 컸구나라는 증거인 것 같기도 해요. 그걸 돌아볼 수 있었다는 거니까.
소은 (33:18) 도현님은 사람마다 선호도가 다를 것 같은데 기능을 개발하는 일, 버그를 수정하는 일, 기술 부채를 해결하는 일 여러가지 일에 종류가 있는데 어떤 걸 선호하세요? 선호라…
도연 (33:41) 제일 재밌는 거는 기능 개발인 것 같아요. 왜냐면 이제 피드백을 받고 그게 뭐 트래픽이 될 수도 있지만 실제 물질적 보상이기도 하니까 내 인사 고과와 그쵸 결국에는 회사에서는 임팩트 있는 일을 하는 게 중요하니까 그게 제일 재밌고
소은 (33:55) 그게 조금 퍼포먼스 리뷰에 반영이 되긴 하죠.
도연 (34:06) 하지만 그것만 해서는 절대 동료의 신뢰를 살 수 없기 때문에 백엔드는 그 세 가지가 다 같이 굴러가야 할 수밖에 없다고 저는 생각해요. 기술 부채든 디버깅이든 왜냐면은 아까 제가 말씀드렸지만 기존의 디자인을 파악하지 못한 상태에서 기능을 개발하면 시행착오를 너무 많이 겪게 되고 결국에는 작업 속도가 더뎌지거든요. 가리지 않고 다 열심히 합니다.
소은 (34:36) 되게 모범적인 답인데요. 그 다음에 제가 좀 여쭤보고 싶었던 거는 같이 사람들하고 일을 하게 되잖아요
도연 (34:38) 일당백이 되기 위해서
소은 (34:48) 여러 상황이 생기는데 특히 엔지니어로서 코드 리뷰도 많이 하게 되잖아요. 그때 도연님이 생각하셨을 때 코드 리뷰를 할 때? 중요하다고 생각하시는 부분이 있으신가요?
도연 (35:01) 저는 너무 많이 지적하려고 하지 않으려고 해요. 뭐라고 해야 될까요 이거를
기본적으로 코드 작성할 때 뭔가 생각을 하고 쓰잖아요. 막 사소한 거를 얘기를 해서 이 사람이 정말 중요한 문제를 고민 안 하게 될까 봐 약간 그런 생각이 좀 드는 것 같아요. 기본적으로는 최대한 작성자를 좀 믿고 큰 틀에서
이게 앞으로 이렇게 될 수도 있는데 그건 어떻게 생각하냐라던가 뭐 이런 부분은 한번 고민하고 넘어갔는지 이런 것들 좀 많이 체크하는 편이긴 해요. 왜냐하면은 일단 뭐 정말 기본적인 것들은 당연히 얘기를 해야 되는데
저는 일단 지금 팀 같은 경우는 주니어 개발자들이 다 브라질에 있어서 그 친구들을 케어하는 친구들이 따로 있고 저는 이제 보통 시니어들이랑 일을 하거든요 그래서 다들 경험이 많이 있고 자기들이 뭘 하는지 잘 알고 있는 상태이기 때문에 이제 보통은 이제 어떤 부분이 체크가 되어야 되는지 그걸 같이 상호 점검하는 수준에서 리뷰를 하려고 해요
소은 (36:20) 그러면 가끔씩 코드 리뷰 하다가 의견을 좀 더 나눠야 된다 그런 상황이 생길 수도 있죠. 같이 모여서 코드 보면서 얘기하고 그러시나요?
도연 (36:28) 맞아요.
너무
얘기가 길어질 것 같으면 그냥 화상을 하든 그 자리에 가서 물어보든 그게 훨씬 빠른 것 같아요. 왜냐면 코멘트로 핑퐁을 너무 많이 하면 스트레스가 쌓이거든요.
당사자들도 다 왜냐면은 퍼블릭하잖아요 그런 데서 막 계속 argue를 하면은 부담이 쌓이기 때문에 저는 차라리 이게 아 우리 좀 혹시 문제 없는지 확인 한번 해보자 이런 느낌으로 얘기하는 게 훨씬 좋은 것 같아서 차라리 call을 합니다 저는
소은 (37:04) 지금 제가 다니는 회사에는 리모트 베이스 회사다 보니까 텍스트로 많이 커뮤니케이션을 할 경우가 많이 생기거든요. 가끔씩 화상으로 커뮤니케이션 할 때도 많은데 보통 이제 코드리뷰 할 때 텍스트로 좀 많이 남기고 나중에 기록으로 좀 볼 수 있도록 하려고 하는 것
코드 리뷰를 남길 때 이게 마이너인지 메이저인지 이거는 뤼퀘스트 체인지를 해야 하는 그런 건지 해서 코멘트를 남길 때마다 그 앞에 레이블이라고 그러던가 그걸 남겨서 이거는
고쳐야 하는 문제다. 이건 마이너해서 그냥 머지 해도 된다. 이런 식으로 레이블을 분리해서 남기는 컬처가 있거든요. 비슷한 컬처가
깃랩에서 비슷하게 그렇게 하고 있는 거로 알고 있어요. 그걸 레퍼런스 받아서 하는것 같고. 그 아이디어도 조금 괜찮은 것 같더라고요. 어떤 걸 중요하게 지금 봐야 되는지.
도연 (38:10) 맞아요
맞아요 사실은 다들 암암리에 하고 있는 것 같아요 그러니까 꼭 이제 그렇게 뭔가 정해진 상징 기호를 넣는 것도 있지만은 뭔가 아 이건 나 그냥 질문인데 뭐 이거는 별로 중요한 뭐 블록커가 되는 건 아닌데 하면서 이제 물어보고 그런 식으로 서로 리뷰 주고 받는 것 같아요
소은 (38:32) 코딩 말고 취미로 하고 있으신 것들이 있나요?
도연 (38:36) 저는 일단 운동. 운동 진짜 열심히 하고 있는 것 같아요. 왜냐면은 계속 앉아 있으니까 머리를 좀 식혀야 되는데 또 앉아서 뭔가를 하는 것보다는 몸을 움직이는 게 낫더라고요. 이제 운동 그냥 헬스 일주일에 두 번, 세 번 정도 꼭 하고 그리고 토요일에 테니스 치고 그렇게 지내는 것 같아요. 맛있는 거 해먹는 거 좋아하고
소은 (39:01) 맛있는 거 해먹고 운동하고 그런 거 있는 거 같아요. 코딩을 하면서 저는 가끔씩 브레인포그라고 해야 하나? 가끔씩 올 때가 있거든요. 그때는 좀 밖에 나가서 좀 산책하려고
도연 (39:15) 맞아요
그런거 필요해요
소은 (39:17) 운동을 하고 나면 조금 더 갑자기 없었던 에너지가 더 생기고 그러더라고요 운동이 진짜 중요하다는 것을 저는 매번 느끼는 것 같아요
도연 (39:26) 맞아요. 운동하다가도 가끔 일 생각을 안 하고 있었는데 아 이거 이렇게 해야겠다 이럴 때가 오잖아요. 오히려 머리를 비웠을 때 오는 솔루션들이 좀 있는 것 같아요.
소은 (39:41) 그러면 테니스는 베를린 어디에서 하시는 건가요? 토요일마다 하시는 거죠?
도연 (39:48) 네 맞아요. 베를린에서 제가 원래 테니스 강습을 좀 듣다가 아 좀 더 전문적인 교육이 필요한데? 그때 회차별로 나가는 수업이었는데 그런 거 말고 다른 게 없을까. 제일 좋은 건 테니스 클럽에 소속돼서 하는 거거든요. 그런 운동하면 보통 클럽에 소속되어서 정기적으로 나가서 하는 게 굉장히 일반적인 문화예요.
테니스 클럽을 찾다가 우연히 그 한인 테니스 클럽이 있다고 그래서 거기 나가서 레슨을 받으면서 테니스를 치고 있어요.
소은 (40:21) 테니스 하신다는 얘기 좀 오래 전부터 들었던 것 같은데 되게 오랫동안 하시는 거 보니까 되게 재밌으신 것 같아요.
도연 (40:27) 맞아요.
작년 한 10월부터 했던 것 같은데 토요일마다 3시간씩 하거든요. 이제 막 저만 치는 게 아니고 같이 강습 듣는 분들이 있으셔서 그분들 칠 때 잠깐 쉬고 이렇게 하면은 정말 순수하게 막 3시간을 다 채워서 치는 건 아니거든요. 그렇게 해서 치고 있습니다.
소은 (40:35) 3시간이요?
그럼 도연님 이제 마지막으로 질문 드리고 싶은 거는 앞으로의 뭔가 계획? 엔지니어로서 어떻게 꼭 엔지니어 아니더라도 계획이라든가 아니면은 이 부분 요즘에 고민하고 있다 이런 부분이 있을까요?
도연 (41:11) 어 저는 요즘에는 기술적인 성장보다는 어떻게 하면 소프트 스킬을 더 키울 수 있는가. 왜냐면 한국에서는 저는 그 소프트 스킬 자체에 그렇게 막 주목하진 않았어요.
경험을 충분히 쌓으면 괜찮아지지 않을까? 이런 생각이 좀 있었던 것 같아요. 근데 독일 와서 영어로 일을 해보니까 오히려 제2외국어로 소통하게 되면서 내가 어떤 부분이 사실은 좀 부족했는지가 오히려 더 잘 보이더라고요. 이게 저는 처음에 그냥 언어가 부족해서 그렇겠거니 했는데 이게
잘 생각을 해보니까 다 다른 문화에서 왔잖아요 그러니까 서로 분명하게 이해도를 맞추는 게 절대 쉽게 이루어지는 게 아니구나 한국에서도 그런 게 중요했는데 제가 그거를 너무 쉽게 생각했던 것 같아요 그냥 뭐 잘 모르면 한번 가서 알려주면 되지 뭐 이렇게 생각했었는데
소은 (42:07) 맞아요
도연 (42:21) 그렇게 할 수도 있지만 더 나은 방식이 있을 수도 있겠다. 더 잘한다면 뭔가… 사람들이 좀 더 쉽게 일을 할 수 있도록 도와주는 방법이 분명히 있을 것 같다 이런 생각이 드는 거예요. 여기에서 오히려 다른 문화권 사람들이랑 일을 해보니까.
일단 저는 그걸 어떻게 하면 키울 수 있는가 했을 때 당연히 일단 영어 실력을 당연히 키워야 되고 근데 그 실력을 키운다는 게 영어 자체를 잘하게 되는 것보다 그들이 이해할 수 있는 방식으로 표현하는 거 그런 거를 배워야 되는 것 같아요. 그게 사실 영어 공부가 되기도 하는 거고
소은 (43:04) 맞아요.
영어로 일을 하다보면 제가 의도하지 않았는데 저의 부족한 영어 때문에 직설적으로 이야기 할때가 많이 있더라고요. 그런 걸 좀 고쳐야겠다. 그래서 영어 수업도 계속 듣고 고치려고 열심히 노력하고 있거든요. 그거 되게 공감이 되는 포인트 같아요.
도연 (43:13) 맞아요 맞아요
사실은 한국에서 한국어로 일을 하니까 그런 게 가려져 있었던 것 같아요. 그런 부족함이. 내가 원하면 쉽게 상황을 그냥 흘러가게 할 수 있으니까, 모면할 수 있으니까 문제가 생겨도 그냥 문제라고도 생각 못 했던 것들이 여기 와서 내가 언어 실력이 떨어지니까 약간 스무스하게 넘어가는 게 어려워지면서 아, 애초에 내가 이거를 훨씬 더 분명하게 얼라인 했었어야 됐구나.
소은 (43:32) 네.
도연 (43:55) 배워지는 거죠 그런 게 있는 것 같아요
소은 (44:01) 감사합니다.
오늘 이렇게 도연님 모시고 얘기를 했는데 도연님에 대한 링크드인이라든가 도연님에 대한
도연 (44:14) 신상
소은 (44:19) SNS라든가 그런 것들은 저희 팟캐스트 웹사이트에 올려 놓을 예정이거든요.
소은 (44:25) 해당 링크 참조하시면 될 것 같구요 오늘 참여해주신 도연님께 감사드리고 테크 언니s 이번 에피소드는 마무리하고 다음 에피소드에 새로운 분과 함께 돌아오겠습니다 다음 에피소드에서 만나요
도연 (44:38) 네, 들어주셔서 감사합니다.