업무, 운동, 자기개발


2019 회고록을 작성하면서 주 키워드를 입사, 운동, 자기개발로 꼽았다. 비슷한 맥락으로 신년 계획은 업무, 운동, 자기개발 이라는 키워드로 작성해보려 한다.


업무

도메인 파악, 엔진 파악, 테스트코드 정착, 형상관리 변환

업무와 관련된 계획성 키워드로 총 네 가지를 꼽아봤다.

1년간 솔루션 업무/유지보수를 진행하면서 개인적으로 꼭 필요하다고 느꼈던 부분과 효율성 측면에서 중요하지만 크게 어렵지 않은 부분이라 만 1년차 주니어 개발자가 할수 있는 것들을 먼저 해보려 한다.

  • 업무진행에 있어 도메인 파악은 설계뿐 아니라 개발 및 업무 이해를 위해 반드시 필요하다. 가장 먼저 도메인이 파악 되어야 도메인에 대한 이해가 가능하고 도메인에 대한 이해가 있어야 도메인 개념들을 활용하여 기능 설계 및 개발이 가능하다.

  • 엔진 파악 은 솔루션 개발 및 유지보수에 있어 더 큰 범위를 커버하기 위해 반드시 필요한 작업이다. 지난 1년간은 주로 화면쪽에서 발생하는 버그 및 요구사항 추가와 관련하여 소스코드를 파악하고 개발을 진행하였다면 그 다음은 보다 깊은 부분을 파악함으로써 솔루션 코어에 대한 요건 발생시 문제 해결을 할 수 있게끔 한다. 이후 솔루션 통합 및 확장에 있어 필요한 부분과 불필요한 부분을 구분하여 솔루션 개발 업무에 더 큰 기여를 할 수 있도록 성장한다.

  • 테스트코드 정착 은 질 높은 코드 생산을 위해 반드시 필요한 작업이라고 알고있다. 실제로 어떻게 진행되고 어떤 패러다임이 있는지는 아직 잘 알지 못하지만 부수효과를 최소화 화면서 확장성, 유지보수성을 극대화하는 품질높은 코드는 개발자들이 항상 염두해야하는 자세이다. 그리고 그 시작이 테스트코드 정착 이 될 것같다. 물론 팀내 개발문화를 한낱 실력없는 1년차 주니어가 바꿀수 있진 않겠지만 최소한 내가 맡고있는 솔루션 개발에서 만큼은 테스트 코드를 반드시 정착시키기 위해 힘쓸 생각이다. 물론 어설프지 않기 위해 스스로 열심히 학습을 할 예정이다.

  • 형상관리 변환 은 앞서 말했다 시피 GIT 으로의 변환을 의미한다. 현재 팀내에서 주력으로 사용하고 있는 형상 관리 툴은 SVN 이다. 브랜치 전략도 번거로운데다 로컬 저장소를 지원하지 않기 때문에 형상 관리에 있어 GIT 에 비해 많이 불편한 것은 사실이다. 그리고 현재 트렌디한 개발자들 중 SVN 을 이용하여 형상관리를 하고있는 개발자는 0.1%도 안되리라 자신한다.

사내 솔루션의 품질 향상을 위해, 개발자로서의 개인적인 성장을 위해, 팀의 상호 협력을 통한 성장이 가능한 개발문화 정착을 위해 조금씩 작은 것 부터 실천하자.


자기개발

객체지향 패러다임, TDD, 알고리즘, 스프링/웹

자기개발과 관련된 키워드를 위와 같이 4가지를 꼽았다. 물론 더 많이 있지만 우선순위를 고려했을 때 가장 높은 위치에 있는 키워드들이다. 물론 이 외에도 클린코드, Toy Project, 함수형 프로그래밍, JS, OS, 네트워크 등 다양하게 있고 최대한 많은 부분을 커버하려고 노력할 예정이다.

학습, 휴식, 보상 을 적절히 분리하여 나에게 맞는 학습 루틴을 세우고 정보 인출 을 적절히 사용하여 의식적인 연습이 되게끔 한다.

  • 객체지향 패러다임 은 역시나 새해에도 가장 우선순위에 두고 가장 먼저 학습할 키워드이다. 현재 이 블로그에 포스팅중인 오브젝트 도서 정리 내용이 그 일환이다. 지금 이 포스팅을 작성하고 있는 시점에 6장을 진행중이니 3월달 까지 어떤일이 있더라도 모든 포스팅을 마치겠다. 이를 위해서는 1주일에 한 챕터씩 학습하여 포스팅을 해야한다.

    • 운동을 가지 않는 평일(화, 목)에 05:15AM ~ 07:30AM 약 135분 간 도서 학습 및 정리를 진행한다.

    • 운동을 가지 않는 평일(화, 목)에 퇴근 후 09:00PM ~ 11:00PM 약 120분 간 도서 학습 및 정리를 진행한다.

    • 주말(토, 일)을 이용하여 다시한번 정리하고 블로그 포스팅을 한다.

    • 업무에서 새로운 기능 개발시 항상 객체지향적 설계원칙을 고려하여 구현한다.

  • 알고리즘 은 이직을 위해서 특정한 알고리즘을 학습하기 보다는 개발 전반에 있어 구현력, 문제해결력, 논리력을 향상시키기 위해 꾸준히 학습하려 한다. 목표는 일주일 최소 5문제 로써 운동가는 평일(월, 수, 금) 05:15AM ~ 07:30AM 알고리즘 문제풀이를 한다.

    • 현재 프로그래머스 Lv2 문제풀이 중으로, 현재 시점 약 34문제가 남아있다.

    • 위 프로그래머스 Lv2 문제를 오브젝트와 같이 3월달에 완료 한다.

    • 프로그래머스 Lv2 문제를 풀이한 이후에는 권오흠 알고리즘 강좌 를 4월달 까지 완료한다.

    • 권오흠 알고리즘 강좌 를 마친 이후 프로그래머스 Lv3 문제 풀이에 돌입한다.

  • TDD오브젝트 블로깅이 모두 끝난 3월 이후 바로 진행한다.

    • 객체지향 설계원칙을 업무에 적용하여 성장에 큰 도움이 되고있으므로 TDD 역시 업무에 적용한다.

    • 어느정도 궤도에 올랐을 때 솔루션 개발에 있어 테스트 코드 작성 및 코드 리뷰 의 정착화 시도를 진행한다.

  • 스프링/웹 은 꼭 진행해야 할 학습이면서 동시에 다른 학습에 밀려 중도 하차했던 학습이다. 언제까지고 뒤로 미룰 수 없으므로 주말 을 이용하여 조금씩이라도 학습을 진행한다.

    • 가장 먼저 기존에 중도 하차했던 Java web 기본 도서를 이용하여 끝까지 학습한다. (난이도가 높지 않아서 수월하다.)

    • 토요일, 일요일 각 4시간 씩 투자한다.

    • 토요일과 일요일만 진행하므로 주말 학습 우선순위는 가장 높게 둔다.

    • 즉, 스프링/웹 -> 객체지향(or TDD) -> 알고리즘 순으로 진행한다.

    • 기본 도서 학습을 마친 이후에는 백기선의 스프링 강의를 수강한다.

평일, 2 or 4시간, 주말 4, 4, 2 구조. 주말을 지키기엔 너무 타이트하고 무리일 수도 있겠다 싶음.


운동

스트렝스, 3대 500, 체지방 컷팅

새해에도 리프팅 훈련 위주로 진행할 예정이다. 2019년과 달라진점이 있다면 500 달성 이후 스트렝스를 최대한 500대로 유지하는 선에서 체지방을 컷팅(체중 70키로 중반대)할 예정이다.

  • 3대 500까지 5X5 프로그램 계속해서 진행

  • 500 달성 이후 스트렝스 유지, 체지방 컷팅 (70키로 중반까지 컷팅)

참고 및 출처