만족

2019년 돌아보기 본문

2019년 돌아보기

잡동사니 Satisfaction 2020. 1. 5. 19:49

2020년이 되었습니다.

 

2019년에 내가 무엇을 이루었는지 돌아보려 합니다.

 

1. 가장 애착이 가는 앱, 사이퍼즈 서포터

 

 

2018년 7월에 인턴 생활을 하며 짬짬이 제작하던 앱, 사이퍼즈 서포터는 제가 좋아하는 게임인 사이퍼즈가 타 인기게임보다 정보를 얻을 수 있는 공간이 없다고 판단하여 만든 앱 입니다.

 

(정직한 1자 브랜치....)

 

2019년에는 2.x버전으로 올려서, 디자인/속도/기능 등 많은 방면에서 고민하며 사용자 경험을 극대화시키기 위해 많이 노력했습니다.

 

프로그램 제작 부분은 모두 혼자 담당하기 때문에(서버, 웹, 앱), 알아야 할 것이 매일같이 늘어갔습니다.

 

물론 저도 사람인지라 정말 하기 싫을때도 많았지만, 참고 열심히 배우다보니 정말 많은 지식이 쌓였습니다.

 

단적으로, 앱에서는 '패키지' 개념을 잘 활용하지 않아서 여러 클래스가 하나의 패키지에 뒤죽박죽 섞였었으며,

서버에서는 REST API개념에 대한 미숙으로 너저분한 서버 코드가 난무했었습니다.

 

친구들의 조언이나, 학교 수업에서 이들 개념이 정립되고 제 서비스에 하나하나 적용해보니, 더 빨리 깨우칠 수 있게 된 것 같습니다.

 

무엇보다 개발하면서 가장 크게 느낀 점은, '정말 코드를 잘 짰다!' 했었더라도 다음 버전 업데이트 때 보면 '정말 못 짰다...'라는 생각이 든다는 점 입니다.

(아무래도 요구사항 스펙 정리 없이 그때그때 땜빵하다보니, 코드 역시 땜질한 흔적이 다분했습니다)

 

책도 보고, 인터넷에서 검색도 하면서 조금이라도 더 명확한 디자인 패턴을 적용하기 위해 많이 노력해서 지금은 (3.1.x) 꽤 봐줄만한 수준이 된 것 같습니다. (물론 이것도 어느정도 시간이 지나면 못생겨 보이겠지요...ㅎㅎ)

 

열심히 개발하다 보니, 저를 도와주시는 멋진 조력자 분들도 생겼습니다.

 

솔직히 게임을 많이 하거나 잘하는 편은 아니다보니, 혼자 했을때는 놓쳤던 부분들과 부족한 부분들을 고마우신 분들께서 많이 채워 주셔서 아직까지도 잘 굴러가고 있는 것 같습니다.

 

현재는 활성 기기 수 11000명 정도가 사용하는, 어느정도 규모있는 서비스가 되었습니다.

 

2. 처음 진행하는 웹 프로덕션 개발

 

기존 웹에 추가 기능을 개발했던 일은 2018년 인턴 생활에서 해 보았으나, 돈을 받고 전체 서비스를 만드는 작업은 이번이 처음이였습니다.

 

더구나 그 앱은 회사 내부에서 사용을 목적으로 했기 떄문에, UI/UX(반응형을 포함하여)나 속도 문제에 관해 고려할 필요가 없었습니다.

 

그러나 이번엔 달랐습니다.

 

실제 사용자가 사용하는 서비스였기 때문에, 그 두 가지가 가장 민감한 사항이였습니다.

 

jQuery와 php를 이용해 개발을 시작했습니다.

(애초에 다른 선택지가 없기도 했었습니다. 그 두개밖에 쓸 줄 몰랐거든요)

 

컴포넌트 갯수가 얼마 없을 때에는 꽤 순조로웠습니다. 

최적화를 하지 않아도 딱히 느려지지 않았으며, 코드 줄수도 적었기 때문이죠.

 

그러나 개발이 진행됨에 따라서 코드의 가독성, script 태그간의 의존성 문제로 리팩토링의 어려움과, 복잡해져만 가는 css들로 난항을 많이 겪었습니다.

 

더구나 이 시기에는 제 js 지식의 한계는 es5(익스플로러 시절...)에 머물러 있었기에, 강력한 es6, es7의 기능들을 사용하지 못하여 더더욱 가독성은 극악이였습니다.

(단적으로 es6의 Array.map을 몰라서 for문으로 하나씩 빙글빙글 돌려 가면서 새로운 배열을 만들었습니다...)

 

어느정도 개발이 완료되니, 이번엔 반응형 css를 적용하라더군요.

 

참 난감했었습니다...ㅎㅎ 이론적 지식은 없지만 적용해본 적이 한번도 없었거든요.

 

그래도 어찌어찌 한달간 삽질을 반복하다 보니 완성은 했습니다.

 

가장 크게 느낀점은, 서비스의 규모가 어느정도 커지면 기존의 고전적인 개발 방식으로는 진행하기가 상당히 어렵다는 점과, es6의 중요성입니다.

 

개발 중/후반부에 es6의 존재를 알았지만, 난잡해진 코드를 손대기가 너무 무서워서, 그 이후에 개발하는 모듈에 찔끔찔끔 썼던 기억이 납니다 ㅎㅎ

 

아, 그리고 또 한가지는, 웹의 생산성은 어마어마하다는 점입니다.

 

기존까지는 안드로이드 개발을 주력으로 하고 있었지만, 한세월 걸리는 빌드시간과 앱을 뻥뻥 터트리는 버그로 여간 스트레스가 아니였습니다만,

웹 개발시에는 구닥다리 지식으로도 앱과 비교가 불가능한 생산성을 보여줬습니다.

 

이 때 앱개발의 회의감을 굉장히 크게 느껴, 잠시동안은 자바를 손대기가 무척 싫었습니다...

 

3. React: JQuery는 이제 그만!

 

과 동기중에 웹개발을 하는 친구가 JQuery가 아닌 React로 웹개발을 하는 모습을 보았습니다.

 

처음 봤을 때는, 코드 내에 따옴표(")없이 html 코드가 난무하고, 처음 보는 해괴망측한 js 문법이 사용되는 걸 보고 상당한 위화감과 거부감이 들었습니다.

 

커뮤니티에서 굉장한 찬사를 받는 라이브러리였기에 궁금해서 장점을 물어보았더니, 컴포넌트 단위 개발로 생산성이 매우 높고, 개발이 매우 편리하다더군요.

 

한동안은 거부감이 가라앉지를 않았으나, 방학 시즌이 되어 책을 하나 추천받아 그걸로 공부를 시작했습니다.

뭐, 해보고 별로라면 좋은 경험 했다고 치고 버리면 되니까요.

 

책에 hello world! 를 출력하는 코드를 보고 나서는 거부감이 다시 생겼습니다.

 

아니, 하나의 태그를 출력하는데 터미널에 명령어를 쳐서 프로젝트를 만들고, 그 안에서 클래스와 메소드를 만들어 출력하다니요....

거기다 얘를 사용자한테 제공하려면 따로 빌드까지 해야 한다니...

 

제이쿼리를 이용해 바로바로 개발/프로덕션을 제작하던 저에게는 이해할 수 없는 광경이였습니다.

 

그래도 참고 계속 배워봤습니다.

 

오마이갓... 이건 사기템이였습니다....

 

놀라울 정도의 오픈소스 생태계와, '컴포넌트 단위 개발'의 진가가 드러납니다.

 

고전적인 개발방식에서는 중복된 컴포넌트를 재사용하려면 복사/붙여넣기를 이용하고, 수정이 필요하면 해당 컴포넌트가 사용된 코드를 모두 찾아 변경해줘야 했지만,

리액트에서는 이를 하나의 새로운 '태그'로 사용하기 때문에 생산성이 몇배로 뛰어올랐습니다.

 

로직 역시 컴포넌트 단위로 분해되기 때문에, 기능 추가/수정/삭제가 매우 쉬워졌습니다.

es6 이상을 사용하기 때문에, 해당 지식이 느는건 덤이구요.

 

책을 한번 다 본 이후에, 간단한 웹사이트가 아니라면 웹 개발은 무조건 React를 사용하게 되었습니다.

 

아직도 이 개념을 받아들였을때의 놀라움은 잊혀지지 않네요.

 

4. 교내 공모전에 도전

 

 

처음으로 교내 공모전에 도전했습니다.

 

초/중/고때는 꽤 많은 상장을 받았었지만, 대학교에서는 하나도 못 받고 졸업하는게 조금 억울했거든요

 

그래서 팀을 꾸려, [경영담당, 웹 개발 담당, 서버 개발 담당, 앱 개발 담당]으로 신청해서 선정되었습니다!

 

와! 이제 열심히만 하면 되겠군요!

 

그러나 제 환상은 깨져버렸습니다.

 

팀 내 불화로 개발자 두명이 팀을 나가버렸거든요.

 

3인 분량을 혼자서 전부 맡아야만 했습니다.

 

물론 포기할 수도 있었겠지만, 솔직히 악에 받혀 했습니다.

잘 하는 건 아니지만, 못하진 않거든요.

 

그렇게 매일 매일을 개발하면서 지냈습니다만

저도 사람인지라 업무량의 차이에서 오는 불합리함은 저버릴 수 없었습니다.

 

더구나, 저는 스트레스를 받으면 먹지 않게 되어서

체중은 한달 사이 5kg이 빠졌고 성격은 매우 예민해졌습니다.

 

결국 팀장과도 싸우게 됐습니다.

 

어찌어찌 잘 풀어서, 프로젝트를 포기하지 않고 계속했고, 결국 1등을 차지했습니다.

(장학금 낼-름)

 

소원은 성취했네요 ㅎㅎ

 

5. 창업진흥원 예비창업패키지 당선

매년 한국에서는 창업 경험이 없는 사람에게 신청서와 사업계획서를 받아서, 

뽑힌 팀에게 1억원 이내의 사업지원금을 지원해 줍니다.

 

작년에 여기에 지원하여 과제를 수행한 과 동기로부터 도움을 받아 신청하여 합격했습니다.

 

서류합 이후에 면접 겸 프레젠테이션을 진행합니다만, 저는 발표를 잘 하는 사람은 아닙니다.

 

제가 잘 아는 분야라면 괜찮지만, 해당 면접에서는 제 전공이 아닌 '사업성', 즉 경영적인 부분을 중요하게 보는 면접이라 정말 많은 학습과 연습을 요했습니다.

 

물론 상업고등학교를 졸업하긴 했지만, 거기서 배운 지식은 정말 기초적인 수준입니다.

해당 분야에서 일가견을 가진 분들이 보기에는 상당히 초라한 수준이지요.

 

더구나, 아직 학기가 끝나지 않은 상태라서 학교갔다가 알바갔다가 집에와서 연습.

이걸 2주동안 매일 반복했습니다.

 

꽤 어렵더군요... 긴장하면 말을 저는데다가 발음도 정확한 편은 아니라서 더 많은 노력을 요했던 것 같습니다.

 

그래도 노력하면 안 되는건 없다는 믿음을 가지고 연습했습니다.

 

결국 합격해서 약 5천만원의 지원금을 받아 사업 준비중에 있습니다.

 

합격하고 난 다음에도 세금관련, 급여관련, 기술관련해서 많은 어려움이 있지만, 열심히 배워가고 있습니다.

 

6. 저축하기

 

2019년에는 학교, 알바, 외주를 매일매일 반복하며 살았습니다.

 

나이도 어린 놈이 무슨 이런 생각을 하느냐 할 수도 있지만, 개인적으로 저는 '내년의 나는 올해의 나보다 상태가 좋지 않다'는 생각을 가지고 삽니다.

 

즉, 제가 지금 10만큼의 일을 한다면 내년의 저는 8~9정도만큼의 일을 하지 못한다고 생각합니다.

 

그래서 속된 말로 '땡길 수 있을 때, 확 땡기자'는 마음가짐을 가지고 살아갑니다.

 

그래서 지금 할 수 있는건 다 하며 살아갑니다.

 

정말 피곤하고, 우울합니다.

잘 사는 집 친구들은 따로 일을 하지 않음에도 차나 명품을 구매하고 여행을 다니는 걸 보면 인생에 회의감이 들기도 하구요.

 

원래 인생은 불공평의 연속이니, 얼마 되지는 않지만 통장에 쌓이는 잔고를 보며 버텨냈습니다.

 

연말에 제가 목표한 금액을 모아 기분이 매우 좋습니다만, 학자금 대출 잔액을 보니 제가 모은 돈으로 모두 상환해도 완제가 안되는걸 보니 요즘 다시 우울해지긴 합니다...

 

뭐, 올해나 내년에는 -가 아닌 +가 되겠죠.

그렇게 됐으면 좋겠습니다.

 

마치며

2019년에 많은 업무에 치이면서, 성격도 많이 예민해지고 몸 상태도 나빠졌습니다.

솔직히 말하면, 수험생 당시보다 더 힘든 한 해였던것 같습니다.

 

2021년에 다시 2020년을 회고할 때에는 지금보다 더 나은 제가 되었으면 좋겠습니다.

 

감사합니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 



Comments