… 너희가 너희보다 강대한 나라들을 차지할 것인즉
신명기 11:23
하나님은 이스라엘 민족에게 **"너희보다 강한 나라들을 너희가 차지할 것이다"**라고 하셨다.
이 세상은 너무 커 보이는데 그에 비해 나는 참 작은 것 같다. 이 세상에는 뛰어난 사람들이 참 많은 것 같다.
하지만 우리는 이미 그들이 그들의 방식대로 일궈놓은 세상 속에서 하나님의 나라를 세워나가야 한다.
나 같은 사람이 할 수 있을까? 나를 보면, 난 너무 작아 보이는데…
하지만 하나님은 어떻게든 하신다. 하나님 당신의 방식대로…
지난 2018년 1월 23일부터 2월 3일까지 우간다 아웃리치팀 20명(김시언, 김영식, 김하민, 류호선, 문성희, 박규태, 박하진, 이수원, 이희성, 장재휴, 정비상, 정상희, 정세인, 최유경, 최유진, 최진영, 최희서, 최희재, 하지윤, 한산하)은 예정된 사역을 무사히 마치고 돌아왔다. 지난 11박 12일간의 사역을 돌아본다.
우간다는 어떤 나라인가? 한반도의 1.1배 위 지도에서 빨갛게 표시된 나라가 우간다이다. 면적은 한반도의 1.1배라고 한다. 적도에 걸쳐있기 때문에 걸어서 남반구와 북반구를 왔다 갔다 할 수 있다.
아프리카의 중심 지도상으로는 아프리카 대륙의 약간 아래쪽에 위치한 것 같지만, 아프리카 대륙 위쪽에 위치한 사하라 사막은 사람이 왕래할 수 없는 곳이기 때문에 아프리카 문화권은 사하라 사막 위쪽과 아래쪽으로 나눠진다.
8년 만에 다시 아프리카로 간다.
이번 여행은 어떨까?
이미 30대 후반이 되어 이미 가정을 이룬 가장의 위치에서, 20명의 아웃리치 팀원들과 함께 떠나는 선교 여행이다.
이번 여행은 순종하는 여행이 되고 싶다. 내가 하고 싶은 경험을 하는 여행이 아니라 하나님이 경험하길 원하시는 것을 경험하고 오는 여행이 되길 바란다. 하나님께 순종하는 여행이 되고 싶다. 매 순간순간, 내가 어떻게 움직이길 원하시는지 하나님께 묻고, 하나님 주신 마음에 그대로 순종하기 원한다.
첫번째 미션 2018.01.23
9시에 교회에 도착했다.
중국 이커머스 최대 행사인 쐉쓰이(双十一)때 11월11일 0시가 되자마자 매출이 급상승함과 동시에 이벤트가 미친듯이 순식간에 몰려드는 것을 보고, 일 년 전 밤을 지새우며 O2O 시스템을 Event driven 방식으로 바꾸느라 고생했던 순간이 떠올랐다.
쐉쓰이의 분위기는 동료가 쓴 글인 개발자가 바라본 중국 쇼핑 축제 쐉쓰이(광군제)에 생생하게 나타나 있다. 실제 당일날 MongoDB 인덱스 문제, 디스크 부족으로 인한 kafka 서버 장애, 등 몇몇 문제가 발생하기도 했지만, 고객에게는 문제없이 서비스가 제공되었고1, 쐉쓰이(双十一)는 무사히 지나갔다.
이번 글에서는 쐉쓰이(双十一)를 버틸 수 있었던 요소 중 하나였던 Event driven 방식을 소개하려고 한다.
Go My Way는 Go 언어로 웹 어플리케이션을 작성할 때 선호하는 나만의 방식을 3편에 걸쳐서 소개하는 글이다. 이전 글은 읽지 않았다면 아래 링크를 참조하기 바란다.
Go My Way #1 - 웹 프레임워크 Go My Way #2 - 데이터베이스, 로깅 Go My Way #3 - 트레이싱 번외 - gomobile 이번 글에서는 트레이싱에 대해 소개하겠다.
이 글을 작성하는 지금 현재 우리 회사는 클라우드 상에 50여 개의 마이크로 서비스가 서로 얽혀서 동작하고 있다. 사용자의 한 번의 클릭이 실제로는 여러 마이크로 서비스들을 거치고 거쳐서 최종 결과를 고객에게 보여준다.
Go My Way는 Go 언어로 웹 어플리케이션을 작성할 때 선호하는 나만의 방식을 3편에 걸쳐서 소개하는 글이다. 이전 글은 읽지 않았다면 아래 링크를 참조하기 바란다.
Go My Way #1 - 웹 프레임워크 Go My Way #2 - 데이터베이스, 로깅 Go My Way #3 - Configuration, Tracing, etc. 번외 - gomobile 이번 글에서는 데이터베이스와 로깅에 대해 소개하겠다.
데이터베이스 다른 언어에서 주로 사용하던 ORM(루비의 active record, 닷넷의 entityframework, 자바의 JPA, 등)을 생각한다면 Go의 DB 관련 패키지들은 대부분 2% 20% 이상 부족하다.
루비의 Ruby on Rails, 자바의 Spring, 파이썬의 Django, 노드의 Express. 대부분의 인기 있는 언어는 메인 프레임워크가 있다. 그래서 고민 없이 그 언어에 맞는 메인 프레임워크를 사용한다. 하지만 Go는 이런 게 없다. Go는 많은 기능을 하나의 프레임워크에 담아놓는 방식보다, 상황에 맞게 필요한 패키지를 조합한 마이크로 프레임워크를 만들어 사용하는 것을 권장한다. 익숙해지면 이것이 편하지만, Go를 처음 접하는 사람들에게 어떤 패키지를 사용해야 할지 선택하는 것은 여간 어려운 일이 아니다.
Go 언어를 접한 지 3년이 되었고, 지난 1년 동안은 아주 적극적으로 Go 언어를 사용했다.
사내 세미나 전 생각 정리를 위한 글
회고 올해 4월부터 micro-service를 지향하면서 일을 해 왔다. 사실 별로 커 보이지도 않는 기능들을 다양한 서비스로 나누고, 여러 팀에서 나누어 개발을 해 왔다. 기능적으로 본다면, 샵링크(중국 5000여개 매장의 판매 업무를 총괄하는 시스템)와는 비교도 되지 않을 정도로 작고, 그룹웨어보다도 훨씬 작은 싸이즈이다. 그 큰 시스템도 하나의 서비스로 잘 돌아가고 있는데 POS를 통해 위챗 쿠폰을 사용할 수 있게 하자는 단순한 요구를 위해 OO개의 팀에서 OO개의 서비스를 만들었다.
2014년 12월에 쓰기 시작했던 책이 이제야 완성이 됐다.
부끄럽고 민망한 마음이 먼저였다. 이제 나의 부족함이 완전히 드러나 버렸다는 생각에…
오늘 예배를 드리는데, 그런 생각이 좀 누그러졌다.
나의 본 모습이 과장돼서 드러나는 것이 문제지, 내 모습 그대로 드러나는 것이 뭐가 문제인가? 당연히 그래야 하는 거 아닌가?
그제야 도움을 주신 분들께 진심의 감사가 나오더라.
Thanks to…
이 책을 마무리하기까지 도움을 주셨던 많은 분이 있다.
서비스 개발 도중에 새로운 언어를 도입하는 것을 믿고 허락해준 퍼플웍스 친구들(유준석, 김정훈, 백남웅, 김충섭)에게 감사한다.
이제 이틀후면 한국을 떠난다. 그리고 중국으로 간다. 언제까지 중국에 있냐고 묻는 사람들이 많지만, 사실 계획이 없다 ㅎ 3주전에 대부분의 짐을 컨테이너에 실어 보냈고, 엊그제 나머지 짐을 EMS로 보냈다. 이제 비행기 타고 출국하는 일만 남았다.
이번 한달은 중국으로 이동할 준비를 한다는 핑계로 일을 하지 않았다. 대학교를 졸업한 후 처음으로 “무직” 상태로 있었다. 가장 좋았던 것은, 지안이와 많은 시간을 함께 할 수 있었던 것. 그리고 여러가지 생각/묵상들을 많이 할 수 있었던 것.