프로그래밍을 지속적으로 해 왔고, 소프트웨어공학과 전공이지만, 여태까지 외주를 한 적이 없었습니다. 외주를 어디서 구하는 지도 몰랐고, 주변에 실력 좋은 사람들 외주 하는 걸 보니 필자는 아직 외주를 하기에는 실력이 부족하다고 생각해서 였습니다.

그러다가 어쩌다 보니, 이번에 첫 외주를 했습니다. 몇일 전에 잘 마무리 되었고, 이 경험을 블로그 포스팅으로 정리하기로 하였습니다.

시작

저저번주 월요일(2016.11.14) 에 지인 분 소개로 외주를 시작했습니다. 그룹 채팅방에서 지인 분이, “간단한 안드로이드 알바 할 사람?” 이라고 하시길레, 제가 “저요!” 라고 했고, 지인 분께서 외주 의뢰자 분께 저의 연락처를 넘겨 주셨고, 의뢰자 분으로부터 연락이 오면서 외주가 시작되었습니다. 추가적으로 메일 주소를 주고 받았고, 메일로 의뢰 사항과 금액, 지급 조건 등을 받았습니다. 외주를 처음 하는 지라 이미 외주를 많이 해 본 친구들에게 외주 금액 등 물어보면서 도움을 조금씩 받기도 했습니다.

작업

간단한(?) 안드로이드 앱 작업을 하였습니다. 앱에서 카메라로 사진을 하나 촬영하고, 의뢰처로부터 받은 바이너리를 바이너리 하나를 앱에서 실행한 다음, 바이너리가 출력한 결과를 화면에 출력하는 것이 요구사항 이였습니다. 제가 작업한 앱으로 시연을 할 거라고 하시더군요. 사진 촬영 부분은, 기기에 설치된 카메라 앱을 실행해서 촬영을 하도록 했고, 바이너리를 앱에서 실행하는 것은 처음 해보는 것이라 온라인 상에서 자료를 뒤져보다가, ProcessBuiler 를 이용하면 가능하다고 해서 이를 이용하여 작업했습니다.

혹시 집이 *** 이세요?

금액 지급을 위해서, 사전에 의뢰자 분께서 신분증과 계좌번호를 보내 달라고 하셔서 보내드렸는데, 의뢰자 분께서 혹시 집이 *** 이세요? 라는 메시지를 보내시더군요. 뜬금없이 이걸 왜 물어보시는거지 라는 생각으로 그렇다고 대답했더니… 본인은 ** 에 사신다고(필자가 사는 곳 바로 옆 동내!) 하시더군요. 그래서 꽤나 놀랐었습니다… 그래서 어쩌다 보디 의뢰자 분과 좀 늦은 시간에 집 근처 페스트푸드점에서 만났습니다. 만나서 외주에 대해서 몇가지 예기를 하다가, 앱이 실제로 돌아가야 할 기기를 하나 전달받았습니다. 전달받은 기기에서 앱이 돌아가면 된다고 하시더군요.

바이너리 실행 삽질

기기를 받고, 바이너리가 앱에서 실행 되도록 작업 하는걸 하루종일 했습니다. caffe 라는 딥러닝 라이브러리의 안드로이드용으로 포팅한 것의 셈플 바이너리였습니다. 바이너리를 실행하고, 바이너리가 출력한 것을 앱의 화면에 뿌리는 것을 그렇게 어렵지 않은데… 앱에서 바이너리를 실행 하질 못해서 꽤나 애를 많이 먹었습니다. 이건 뭐 바이너리가 문젠가 싶어서, 셸로 접속해서, 직접 실행도 해 보고, 바이너리 위치도 옮겨보고 했습니다. 검색 해보니 저장소도 나오고 해서 직접 빌드 해 보기도 했는데, 바이너리 문제보다는 기기에 설치된 OS 버전이 문제더군요(…) caffe를 안드로이드용으로 포팅한 것인 caffe-android-lib 은 안드로이드 5.0 이상을 지원하는데, 기기에는 안드로이드 4.4 가 설치되어 있어서 실행이 되지 않았던 것이였습니다. 그래서 안드로이드 5.0 커스텀롬 하나 구해다가(기기가 출시 한지 좀 오래된 거라 그런지 순정 펌웨어는 구하기 어렵더군요.) 설치해서 계속 작업했고, 새벽에 겨우 해냈습니다.

작업 끝

금요일에 겨우 작업을 마쳐서 토요일에는 의뢰자 분 회사까지 가지 않고(…) 다시 집 근처 페스트푸드점에서 만나 전달받은 기기를 돌려주는 정도로 작업을 마감했습니다. 의뢰자 분 께서 화면에 텍스트 나오는 것만 조금 다 작업해 달라고 하셔서 그 부분만 수정하는 정도로 앱 작업은 끝났습니다.

문서 및 소스코드 전달과 잔금 수령

몇일 후, 의뢰자 분 께서 전달받은 앱으로 시연을 하시고, 제가 보내야 할 것들을 메일로 보내주셨습니다. 소스코드와, 개발환경 구축 문서, caffe-android-lib 빌드 문서 등을 첨부 해서 보냈는데, Gmail 에서 제가 첨부한 소스코드를 보안상 이유로 보내지 않더군요(…) 그래서 구글 드라이브에 소스 올린 다음 링크를 첨부해서 다시 보냈습니다. (파일 링크 공유는 잔금 받은 후에 껐습니다.) 이틀 정도 걸려서 제가 보낸 파일을 확인 하시고, 금요일(2016.11.25) 쯤 잔금을 입금 해 주시는 것으로 외주가 마무리 되었습니다.

글을 마치며

외주를 하려면 실력도 중요하겠지만… 인맥도 중요한 것 같습니다. 외주 여러번 해본 친구도 외주 어디서 받냐고 물어봤더니 지인으로부터 많이 받는다고 하고, 본인도 지인을 통해 첫 외주를 받아서 했으니 말입니다.

Previous

아마존과 함께하는 클라우드 컴퓨팅 데이 참여 후기

2016.11.09

Read more

Next

Docker for AWS Public Beta 사용해 보기

2016.11.30

Read more