[olive] version 0.0.1 plan

이제 겨우 슬슬 전체적인 그림이 잡혀가는 것 같다.

머릿속으로만 구상했던 개발 컨셉과 동작 방식들을 직접 구현해가면서 나타나는 컨셉 오류들과 함수명 짓는것이 제일 힘들었다.

아무튼.. 늦었지만 대략적인 olive-0.0.1 버전을 위한 단계별 목표를 세워보았다.

 

Stage1 : 고객 Dialing, 대기 상담원 연결, 결과 처리
– 가장 기본적인 Predictive 방식만을 적용한다. 현재 캠페인에 할당되어 있는 대기중인 상담원만을 기준으로 발신을 시도하고 연결한다.

Stage2 : API
– RESTful API 를 구현한다.
– 캠페인의 생성/변경/삭제, 상담원 생성/변경/삭제, 전략 생성/변경/삭제 까지를 목표로 한다.

Stage3 : Packaging and documentation.
– olive 설치와 사용을 위한 Makefile, 문서화를 한다.
– olive 발신의 컨셉에 대한 충분한 설명을 목표로 한다.

Incredible developer story in Korea

[펌].. 상상도 못해본 일이지만…. 그래도 보니 속이 시원해져서…. 퍼옵니다.

이것이 상식에 의거하는 IT 개발자의 생활입니다.

1. 프로젝트가 떨어졌다. 프로젝트는 콜센터 상담원용, 그리고 관리자용 어플리케이션이며,

녹취서버와 CTI 서버, 그리고 교환기와 연동해야 한다.

녹취서버로부터 녹취를 하되. 통화마다 파일이 생성되야하고, 추후 파일을 들을수 있어야 한다. ( WEB 에서 )

CTI 서버로 부터 상담원으로부터 콜이 인입되게되면, 인입된 전화번호를 근거로 디비로부터 고객테이블을 검색하게되고

자동으로 데이터를 상담원에게 보여줄수 있어야 한다.

교환기로부터 생성된 로그를 통하여 통계수치를 산정하여, 관리자 어플리케이션에서 보여줄수 있어야 하며

CTI 서버의 전략을 관리자가 손쉽게 변경할수 있는 인터페이스가 필요하다.

본 프로젝트의 디비는 삼X화재의 디비고, 이 디비를 일배치 작업으로 현X해상으로 넣어줘야 한다.

2. 이 프로젝트를 기한 2개월을 줬다. 인원은 나까지 3명이다. SE한명 개발자 2명이다.

우리 PM은 할수있지?를 연발하며 조기퇴근했다. 난 PM에게 이메일을 보낸다.

각 프로세스별로 일정을 꾸며서 도저히 안되며 기본적인 개발기간 5개월 QA 및 안정화 기간 포함 1개월을 더 달라고 했다.

PM이 다음날 얼굴이 벌게져서 올라왔다. 첫마디가 ” 미친거 아냐? “였다.

딱 한마디 했다 ” 모든 내용은 이메일로 하도록 하겠습니다 ”

그래서 메일이 왔다. 내가 보낸 프로세스를 전부 1/3 씩 줄였다. 이렇게 하라는 것이다.

그래서 다시 메일을 보냈다. 1/3 씩 줄여서 하루 업무시간 9시간을 근거로 다시 스케쥴링을 해달라고 했다.

3. 다시 PM이 얼굴이 벌게져서 올라왔다. ” 알긴아는데… 이건 꼭 해야 하는것이니, 고생스럽더라도 해달라 “였다.

난 다시 말했다 ” 모든 내용은 이메일을 통하여 통보하십시오” PM이 잡설이 늘어지며 설득하려 했으나,

난 다시 이메일을 보냈다. ” 주신 메일을 검토하였으나, 업무시간에 마춰서도 도저히 맞추지 못할 내용이니

재 검토를 바란다 “라는 내용이었다.

그러더니 개인 메일로 내용이 왔다. ” 계속 이따위로 하면 짤릴수도 있으니 알아서 기어라 “라는 내용이었다.

훗…그냥 웃어줬다.

4. 난 그날부터 내 6개월짜리 스케쥴에 맞춰서 근무를 하기 시작했고 이 내용을 취합하여 고객과 PM 그리고 영업이사,

운영이사, 사장님께 보냈다. 추신을 붙였다 ” 일이 너무 과중하오니, 추가 인원을 주시거나, 프로젝트 일정을 늘려주십시오 ”

했다. 그럤더니 , PM 이 올라와서 나보고 ” 오늘부터 야근을 해서라도 일정을 맞추라 “고 명령한다.

5. 그래서 한마디 했다. ” 야근 명령부를 주십시오 ” 했더니 PM이 ” 야근 명령부가 뭔지 모르니 일단 야근 하라 “라고 한다.

난 오후 6시까지 열심히 일하고 나서 , 퇴근했다.

6. 다음날 출근했더니 PM이 ” 내말이 말같지 않나? 왜 퇴근했나? ” 내가 ” 야근 명령부를 주지 않으셔서 야근 안해도 되는지

알았습니다 ” 했다. 그러더니 PM이 어디서 찾았는지 모르겠지만 오늘 점심먹고 나서 야근 명령부를 보내준다.

그날 밤 10시 반까지 신나게 야근을 했다. 나름 오랜만에 야근인지라 재미도 있었다.

7. 다음날이 됬는데 점심먹고 나서 야근 명령부가 오지 않는다. 6시 되서 퇴근했다.

8. 다음날 PM이 얼굴 벌게져서 어제는 왜 야근 안했냐고 한다. 당연히 야근 명령부가 없기때문에 안했다고 했다.

9 . PM이 이번 휴일 반납하고 일정이 조급하니 출근하라고 한다. ” 휴일 근무 명령부를 주십시오 “라고 했다.

PM이 어이없어 하면서 작성해서 준다. 안나올까봐…

10 . 한달이 지났다. 야근 16일 휴일 5일 근무했다. 월급을 받았는데 2개월치 월급이 나왔다.

11. PM에게 메일을 보냈다. 연속되는 강행군으로 개발이 진척이 안된다. 휴식이필요함으로 연차를 쓰겠다고 했다.

또한 이번 휴일엔 야근 명령부를 주시더라도 개인 사정으로 인해 근무가 불가능하다는 메일을 보내고,

전자 결재를 냈지만, 되돌아왔다.

12. PM이 말한다. 팀워크에 대해 한참을 떠든다. 팀을 위해서 내 몸을 축내서 일하란 것인가?라고 물었다.

가정사 및 애인사까지 팀워크를 위해서 내놔야 하는것인가? 내 삶을 내놓고 팀워크를 따져야 하는가? 라고 되물었다

PM이 말한다. 꼭 그렇게 까지 해야 한다면, 팀워크가 맞지 않아서 퇴사를 권고할수 밖에 없다고 한다.

13. 감사합니다. 라고 말했다.

14. 월요일 출근하니, 메일함에 퇴사 권고 메일이 왔다.

15. PM이 와서 짤렸으니 오늘부터 안와도 된다고 한다. 감사하다고 말하고, 나왔다.

16. 회사 인사부에 메일을 보냈다 짤렸으니, 3개월치 월급을 주셔야 하며, 퇴직금과 소득공제까지 계산하셔서

다음달 월급통장에 넣어주셔야 하며, 이 사항이 조취되지 않으면 바로 노동부에 제소하도록 하겠다고 덧붙였다.

지금? 전 회사보다 상식이 통하는 회사에 와서 즐겁게 일하고 있다.

PM도 좋은분이고 실력이 있으시며, 회사도 이름이 있고 튼실하다.

1년중에 휴일근무는 하루 이틀쯤 특이한 사항때메 있고, 야근은 한달에 한번 있을까 말까 한다.

전에 회사에서 3개월치 월급과 퇴직금 그리고 소득공제가 들어왔다.

1년 좀 넘게 근무했는데 돈 천만원쯤 되는거 같다.

스노우보드를 사고, 페러글라이딩 장비구입이랑 연회비 , 그리고 옷 몇벌 사고 나도

5백만원이 남아서 은행에 예치해 놨다.

17. 전 회사에서 연락이 온다. ” 자바 프레임워크와 Flex 프레임워크 버젼이 뭔지 모르겠다. 알려달라 . 인수인계가

없어서 개발에 난항이 있다. ” 다급해 보인다.

18. ” 잠시 와서 봐주면 안되겠냐 ” 난 ” 업무중이니 메일을 달라 “고 하고 끊었다.

19. 메일이 왔다. 핵심 코어 프로세스가 어디에 있는지 모르겠고, 어떤 버젼을 쓰는지 모르겠는데. SVN의 레파지토리에

문제가 생긴모양이다

20. ” 가는건 가능하다. 하지만 코어 프로세스를 재 개발해야 하고. 나역시 Version 테스트 하는데 공수가 들어가니

약 400 만원 정도가 소요될거 같다. 지출 증빙 가능하니 결제 완료되면 연락을 달라고 했다 ”

21. PM이 욱한다. 전화를 끊었다.

22. 다음날 400 만원이 입금되었다. 그날밤에 와달란다. 난 후배와 술약속이 있다.

23. ” 개인 사정에 의해 당일은 어렵고 익일날 가능하면 가주도록 하겠다 그게 안된다면 400만원은 다시 돌려주겠다 ”

24. 다음날 와달란다.

25. 코어 파일 몇개를 웹로직에 던져넣고 버젼 파일 몇개 던져놨다.

26. 서비스 재 기동했다. 잘 도는거 같다. log 파일이 깨끗하다.

27. 들어간지 30분만에 확인시켜주고 나왔다. PM 이 말한다. ” 지금 어디서 근무하냐? 놀고 있음 다른곳 추천좀 해줄까? “한다.

28. 생각해 보겠다고 하고 나온다.

내 행동에 잘못된 부분이 있을까….곱 씹는다.

( 본글은 제가 경험한 그대로를 적습니다. 추가 내용이 있는데 너무 내용이 과격하여 정비후 올리도록 하겠습니다 )

출처 : http://cafe.naver.com/javachobostudy.cafe?iframe_url=/ArticleRead.nhn?articleid=41814

How many (programming) languages does a coder really know?

Quora에 올라온 흥미로운 글을 페북생활코딩그룹의 한 분께서 번역을 해주셔서 함 퍼왔습니다.

번역 출처:
https://www.facebook.com/groups/codingeverybody/permalink/978825162158020/

원문 출처:

Quora의 How many (programming) languages does a coder really know?
http://www.quora.com/How-many-programming-languages-does-a-coder-really-know

Q : 코더가 정말로 알아야 되는 프로그래밍 언어의 숫자는?
난 17살이다. 컴퓨터공학을 전공하고 싶다. 프로그래머로 살아가는데 얼마나 많은 언어들을 알고있어야 되는지 알고 싶다.

추가 정보 : 지금 난 자바, 파이썬과 C++(잘하진 못함)을 할 줄 안다. 여기서 뭘 더 배우면 대학교 다닐때 도움이 될까? (물론 졸업하고 나서도)
자료구조도 조금 알고있다. LL, BST, Queue, De-Queue랑 Stack.
거기다가 HTML 기반의 프리랜싱도 조금할 줄 알아.

P.S. 내 선생은 하스켈 공부해보라고 권하던데 어디서 배우면 좋음?

A : 제가 전문가의 세계에 첫 발을 내딛은 해에 상사에게서 배운 교훈을 공유해드립니다. 제 상사는 회사에 20년 넘게 근속했고 얼추 15년 동안 관리 업무를 하고 있었습니다. 한 번은 회사 에서 어떤 프레임워크(제품)을 평가하게 됬는데 제게는 그 제품의 알고리즘을 우리 회사의 알고리즘과 비교하는 일이 떨어졌습니다. 그 일에 제겐 썩 내키지가 않았는데 왜냐면 학교를 졸업한 뒤로 사용한 언어가 C++ 뿐이었기 때문입니다.

며칠을 허비한 후에 전 상사에게로 가서 모르는 언어는 제 역량 밖이기 때문에 이 일을 할 수 없다고 했습니다. 그는 늘 그렇듯이 미소를 지으며 다음을 말해주었습니다.

” 네놈의 역할이 엔지니어란 걸 명심해라. 그리고 네가 엔지니어인 이상 일을 할 때 필요한 어떤 언어든지 할 줄 알아야 한다. 문법과 세부 사항을 습득하는 데 시간이 걸리긴 하겠다만 ‘로직’은 변하지 않는다. 넌 잘 할 수 있으니깐 다시 한 번 잘해보아라.”

당 신이 이 말 뜻을 제가 받아들인 그대로 해석할런지는 잘 모르겠습니다만 이를 계기로 제가 일을 바라보는 관점과 방법이 변했습니다. 제 상사는 엄청난 양의 제품들과 다수의 팀들을 관리하지만 여전히 그는 코딩합니다. 그는 백엔드, 프론트엔드, computation 이슈들을 고칩니다. 저는 그 이후로는 불평하지 않았습니다. 전 자바와 R을 다뤘고 지금은 파이썬을 쓰고 있습니다. 왜냐면 우리 팀에 필요하고 또 우리의 제품에 제일 좋은 언어이기 때문입니다. 저는 근본적으로 어떤 언어든지 상관치 않고 코드를 쓰는 엔지니어 입니다. 제 조언은 다음과 같습니다. 관심 있는 언어를 배우고 당신이 하는 일을 보다 더 분석적으로 해보세요.
by Raviteja Chirala

출처 : http://okky.kr/article/277350