Diary ETC

AntBot이 세상에 나오기 까지…

특별 기고로 Antbot 탄생 비화를 소개합니다.

AutomateOne , UiPath 니들은 모냐?

AutomateOne VS Uipath

빌링운영팀에서 운영작업으로 여생(?) 보내던 나에게 갑자기 미션이 떨어졌다. 자동화를 한다며, 각팀의 사람들을 불러 모은것이다.
운영팀에 있었지만, 개발팀에서 운영팀으로 넘어온지 1년도 안되는 신입(?) 에게 개발 미션이 떨어진것이다. 물론 승진대상이니 光(?)을 낼수 있는 일에 참여해야지 하는 이유가 더 컸다.
동화라 하기에, Shell 이나, DQ자동화등을 생각하고 참여했던 나에게 AutomateOne과 UiPath는 참 낯설게 느껴지는 프로그램이었다.
둘중의 하나를 선택할것이니, 사용을 해보라는 지시에, 과감하게 AutomateOne을 골랐다. 일단, 메뉴가 한글이었던게 첫번때 이유였고, 두번째는 UiPath같은 UI방식 보다는 코딩을 더 많이 해야하는 AutomateOne이 개발자인 나로써는 개발이 더 쉬워보였다.
하지만, AutomateOne은 C#기반이라, C#을 해보지 못했던, 나는 처음 부터 삽질에 시달렸고, 손에 좀 익어갈때쯤, 우리회사는 UiPath로 한다는 결정이 났다. 이럴거면 첨부터 UiPath로 하던가…. 는 투덜 거림으로 AutomateOne으로 개발했던 소스를 다시 복기해 가며 UiPath로 만들어갔다.

UiPath 너 매력적이다…

UiPath는 첨에는 인상이 그리 좋지 않았다. 일단 한국어(?)를 지원하지 않는다는것, 지원하는 다국어가 일본어 하나라는것이었다. ( No Japan Forever~!! ) 그리고 키보드를 두드려가며 Unix에서 vi로 개발해 오던 나에게, UI방식의 개발은 거부감을 느끼게 하는것이었다.
하지만, 개발을 하면 할수록, UiPath의 진가가 드러났다. 일단 대학교때 해 봤던 Visual Basic이 기본 문법인것( AutomateOne에 비하면 엄청 쉬웠다.), 그리고 UI Cotrol을 인식 시키는것이 쉬웠다. 물론 UI 방식이라 소스가 길어지면 길어질수록 관리가 어려웠지만, 그래도 개발자 아닌가, 자가 학습을 통해서, 기능을 확장시켜 나갔고, 맘에 들지 않는 소스를 갈아업기도 수차례 하였다. SM에서 관리되는 소스야 맘대로 고칠수 없었지만, 통제받지 않은 내맘대로 할수 있는 UiPath의 소스를 언제든 내 맘대로 갈아 엎었다.


그렇게 자동화 지시를 받은 조근점검에 대해서, 우여곡절 끝에 개발이 끝나고, 운영팀에서 개발 할일이 없었던 나에게 UiPath로 운영에 도움이 되는 프로그램을 만들라고 하는건, 캡틴 아메리카에게 히드라를 없애라고 지시한것 처럼 즐거운 일이었다. 서비스 호출내역 모니터링, 정산결과 엑셀 파일 비교 등등등… 막 찍어내듯 만들었다…
그러나 항상 모든 일이 내 맘대로 안되듯….

입이 방정이다…

개발의 욕구를 그렇게 충족시켜 나가던중, RPA관련 하여 회의가 호출되었다. 별로 중요한 이슈가 없는 회의기에 가벼운 맘으로 일찍 참석했다. 602호… 거기서 그렇게 진광철 팀장님을 만났다.
진팀장님이 요금온라인팀장이셨을때 ( 2000년대 후반? )는 제법 많이 접촉할일이 있었지만, ( 요금온라인과 빌링은 밀접 ) 진팀장님이 딴 일을 맡기 시작한 이후에는 별로 대화할 일이 없었는데, 회의를 일찍 갔던 나와 팀장님은 간만에 대화를 나눌수 있었다.
거기서 요즘 근황을 묻는 팀장님의 질문에, UiPath로 이것저것 팀에 필요한것을 만들고 있습니다라고 입을 놀리고 말았던것이다. 그떄 진팀장님의 눈빛이 무엇을 의미하는지 몇일이 지나고 알게되었다.

불길한 예감은 빗나가질 않는다…

몇일후 팀장님께 소환된 나. 진팀장님과 무슨 대화를 했냐고 추궁당하는 나. 별 일 얘기 않했다고 말하는 나. 고객CoE팀을 지원하라는 지시를 받고 놀라는 나. 승진 대상이니 하는게 좋지 않겠냐는 말로 압박 당하는 나. 네 라고 말하는 나.
누굴 탓하리요. 몇일 간의 인수인계 후,나는 CoE팀으로 자리만 옮겼다. 아직까진 편제는 빌링운영팀이라 일말의 희망은 있었지만(?) 모 의미가 없을거라는 생각은 이미 하고 있었다.

CoE팀에서 주어진 일은…. UiPath를 만들어라… 네? 네? 네? 전 UiPath User일뿐인데요? 윈도우 프로그래밍을 해본적도 없는데요? C#? 샵의 이지혜는 아는데… 알려줄테니 해보면 된다는 진팀장님은 본인이 개발하던 소스와 한시간의 설명으로 모든 인수인계가 끝났다?

졸지에 RPA개발팀의 일원인된 나는 진팀장님과 둘이서(라고 쓰고 혼자서라고 읽는다) 개발을 시작했다. 정말 윈도우 프로그램에 대해 아무것도 몰랐던나는 Visual Studio에서 제공되는 자습서를 가지고 계산기(?) 만들기 부터 차근히 시작했다. 참 얼마만에 오는 멘붕인지. 대학교 1학년으로 돌아간것같은 느낌적인 느낌이었다.

넌 누구? 여긴 어디? 난 멘붕?…

Visual Studio에 감을 잡아가던(잡았다고 느꼈던) 나는 본격적으로 진팀장님께 인계받은 소스를 분석하기 시작했다. 하지만, 해당 기술은 Windows Workflow Foundation 으로, 또 다른 영역이었다. 문제는 해당 기술은 국내에서는 거의 개발자가 없었고, 해외 검색을 해도 자료가 잘 나오지 않거나, 나온다 하더라도 링크등이 깨져있는등, 자료를 찾기 힘들었다.
서적도 원서외에는 존재하지 않지 않았고, 그 책조차도 4,5년이상 된 책이었다.
그도 그럴것이 Workflow Foundation (이하 WF )은 4.5가 마지막 버전이었고, 그 마지막 버전이 나온 날짜가 2012년이었다. 개발자도 없는 기술이 마지막 Relase날짜도 7년이나 지났으니( 2019년도 기준), 자료를 찾기도 어려웠고, 찾은 자료도 오래되기 일수 였다.

https://docs.microsoft.com/ko-kr/dotnet/framework/windows-workflow-foundation/

https://en.wikipedia.org/wiki/Windows_Workflow_Foundation

한개 Activity를 만드는데 2주일이 걸리다…

지금이야 공장에서 찍어내듯 Activity를 만들어내지만, 그때는 모든것이 낯설고 모든것이 도전이었다. 밤 10시 퇴근은 당연했고, 소스 한줄을 쳐 내려가기 위해, 4,5시간의 구글검색을 해야했다. 몸의 피로보다는 심리적 좌절감이 더 힘들었다. 내가 이거밖에 안되는가 하는 좌절감이 견디기 힘들었다. DataTable Foreach를 구현하는데 2주가 흘렀다(고작 200줄… ). 2주를 밤 10시에 넘어서 퇴근했고, 주말에도 머릿속에는 해당 개발로 가득했다. 그리고 정상동작되는걸 확인했을때, 온 몸의 짜릿함이… 흡사 마….

최고의 동료를 만나다…

팀장님과 단둘이 있는 상황이 오래가지는 않았다. 프로젝트를 마치고온 김주현 차장님이 합류했고, Rater의 한종호 대리가 합류했다. 그후에 노경훈 차장님도 합류 했다. 그리고 마지막으로 신입사원으로 배운정 사원이 합류를 했다.


김주현 차장님은 PM으로써, 개발자로써 두사람의 역활을 다하며, 우리 AntBot팀을 잘 이끌어줬다. 팀원들의 모든 얘기를 잘 들어줬으며, 윗분들과의 의견을 조율해줬고, 개발의 방향을 정해주고 같이 개발을 해나갔다. 노경훈 차장님은 우리팀에 필요한 모든 문서, 협의, Web개발을 맡아서 해주셨다. 한종호 대리는 대리 답지 않은 실력을 보유 했으며, 개발에 있어서는 나보다 더 나았다. 그리고 가장 좋았던 점은 일을 대하는 마인드가 매우 좋았다. 항상 긍정적이게 일을 대했다. 막내인 배운정 사원도 사원임에도 개발하고자하는 의지가 활활(?) 탔으며, 무엇보다 기대하지도 않았던 디자인 실력이 좋았다.

덕분에 AntBot의 개발은 순풍을 달게 되었고, 개발의 대한 부담감보다는 성취감이 커져가기 시작했고, 안되는 개발이슈도 동료들과의 논의로 헤쳐나갔다.

다시 할 수 있을까?…

이제는 AntBot이 세상에 나와서, 많은 사람에게 알려졋고, 시간이 지나면서 점점 더 많은 기능과 더 나은 디자인으로 나아졌다. 첨 나왔던 AntBot을 생각하면 격세지감이 아닐수 없다.

AntBot의 원형이 되었던 Rehosting the Workflow Designer를 공유합니다.

프로그램이 점점 커지고 , 기능이 많아질수록, 내가 맨처음 만들던 AntBot이 점점 멀어지는 느낌이다. 이제 한두명이 개발하는것이 아니니, 돌아보면 고생도 많이했지만, 보람도 많았던 개발인데. 이제와서 보면 다시 저렇게 할수 있을까 하는 느낌이 든다. 인생에서 몇번 안오는 하얗게 불태울수 있는 시기였던게 아니였다 싶다. 꼭 누구나 원하는 건 아니겠지만, 기회가 된다면, 몬가 하얗게 불태울수 있는 개발을 한번쯤 해보는것도 나쁘지 않을거 같다.

2 comments

댓글 남기기

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.

%d 블로거가 이것을 좋아합니다: