본문 바로가기
방향성

2023년 1월 중간점검

by oncerun 2023. 1. 18.
반응형

 

설을 앞두고 이번 연도도 벌서 2월이 코앞인 것 같다. 

 

1월 중순까지 무엇을 할 것이며 남은 1월도 어떻게 보낼 것인지 잠깐 정리를 해보자.

 

 

1월 중순까지 무엇을 했나?

 

회사에서는 백엔드와 인프라를 맡아서 개발했던 API 서버와 인프라를 제한된 환경에서 어떻게 자동화시키고 성능을 최적화할 수 있는지 알아보고 적용했다. 

 

이 과정에서 애플리케이션의 성능 최적화를 위해 Heap메모리 덤프를 떠서 모니터링하고 GC를 적절하게 옵션을 주고 튜닝하는 방법과 GC의 과거, 현재 사용되는 GC의 개념을 익히고 지속적인 튜닝결과를 모니터링 중이다. 

 

로깅을 하기 위해 관련 문서를 찾아보고 있으며 애플리케이션이 남기는 로그를 logrotate를 사용해 하드 디스크의 부담도 줄이고 일별 로그를 남기도록 했다. 

 

젠킨스를 활용할 자원이 없었다. ( 2 코어 1기가임 로드밸런서 + 서버 한 개, 아마 트래픽이 낮아서 서버 확장의 필요성이 없어서 서버 확장을 안 하나보다. 실제 운영 AWS 관리에는 권한이 없음..)

그리고 서버 접속을 위해선 VPN을 이용했기 때문에 고려할 사항이 많았다. 따라서 배포 전략을 정했어야 했다.

가장 간단하고 빠르게 배포할 수 있는 전략은 현재 상황에서 최적으로 찾았다. 그리고 이를 위해 배포 스크립트를 작성해 기존 배포를 위해 이것 저것 작업해야 하던 것을 10초 이내로 줄였다. 

 

TDD와 DDD 책을 전부 읽었다.

 

1. 테스트 주도 개발 시작하기.

2. 도메인 주도 개발 시작하기

 

최범균님이 쓰신 책 두 권을 읽었는데, 각 개념에 대해 적당한 선을 지키면서 흔히 할 수 있는 착각을 바로잡는 좋은 글이었다. 

이를 통해 얻을 점도 상당히 많았고 책의 내용이 내가 알던 지식을 비교하면서 조금 더 자신감을 갖게된 계기였다.

 

어느정도어느 정도 개발을 시작한 상태였기 때문에 TDD로 개발을 변경하기엔 조금 어려웠다. 하지만 개발을 전부 진행한 후에 테스트를 작성하는데 어느 정도 큰 도움이 됐다. 이를 통해 단위테스트, 통합테스트, Mockito, 스텁 등 다양한 개념을 알고 현재 애플리케이션이 제공하는 모든 기능에 대해 테스트코드를 작성하게 되었다. 

 

추가적으로 API 문서를 별도로 만드는 일이 기능 요청에따라 증가하는 것을 느끼고 어차피 수많은 테스트코드를 작성하고 있는 김에 Spring Rest Doc을 활용해 API 문서를 자동화하였다. 

 

그리고 코드를 지속적으로 리팩토링하는 과정에서 과거에는 보이지 않던 문제점을 찾아 픽스했고 놓쳤던 테스트 케이스도 추가하였다. 

 

아마 추후 기능개선 요청이 올 것인데, 해당 기능은 TDD를 통해 구현해볼 생각이다.

 

2권의 책을 읽고 잠시 코틀린을 공부했다. 기본 문법을 자바 문법과 비교해서 보여주는 강의를 구매하여 코틀린의 철학이나 기본 지식정도를 배우고 현재 코프링을 구현하기 위한 클론을 잠시 공부할 생각이다. 

 

이후 방통대 계절학기 시험이 있었고 건강상 3과목에 대해 시험을 치지못하였는데 2과목에 대해 학점을 인정받고 나머지 한 개는 실패했다. 

 

오늘부터 수강신청이기 때문에 내일 수강신청을 할예정이다.

 

이제 연말정산을 해야 한다. 전 직장에 대해 원천징수영수증이 필요하고, 간소화, 월세액 공제를 공부하고 제출할 예정이다. 

 

그리고 2월 말까지 약간의 시간이 여유로울 수 있으면 기다리고 있는 강의가 있는데 토비 님의 강의와 영한님의 강의이다. 

 

두 권의 책을 보았으면 두 권의 책을 또 보아야 한다. 

 

그래서 두 권의 책을 샀는데 

 

1. 한 권으로 읽는 컴퓨터 구조와 프로그래밍

2. IT 엔지니어를 위한 네트워크 인문

 

네트워크 관련 책은 막 내가 네트워크를 전부 외우겠다는 의지는 아니고, 순수하게 즐기기 위해 가볍게 보고 있으며 아마 개발자가 많이 접할 수 있는 4 계층~7 계층 지식은 조금 꼼꼼하게 볼 생각이다.  

 

각각 3~4장까지 읽은 상태이다. 컴퓨터의 구조라는 책은 방통대에서 공부한 내용이 조금 있지만 각각 전자공학 내용이 나올 때면 인터넷 없이는 읽기가 힘들다.

 

보통 출퇴근 시간이나, 회사 점심시간이 남거나, 일찍 출근하면 읽고 주말에 읽고 있다. 

아마 읽다가 아 이건 기억해야 한다고 생각되면 생각을 정리하고 글을 쓸 예정이다. 

 

1월은 이 두 책으로 보내지 않을까 싶다.

 

그리고 다트와 플러터를 사용하기 위해 공부를 진행하고 클론 코딩을 통해 플러터의 의도를 확인했다. 

 

지금까지 진행한 것을 정리하니 남은 1월을 어떻게 보낼지 정리가 되었다.

 

1. 연말정산

2. 방통대 수강신청

3. 두 권의 책 읽기 (거진 600 페이지고 이해도 어려워 2월까지 읽을 것 같다)

4. 코프링 강의 보면서 코틀린을 사용해 개발을 한다면 어떻게 할 것인지 테스트코드는 어떻게 하는지 확인

5. 플러터로 앱, 웹 각각 공식문서 참조해서 만들기

6. Notification을 어떻게 구현할 것 인지, 서버 점검 시 방안에 대해 생각하고 구현하기.

 

 

끝.

 

 

 

 

 

 

반응형

'방향성' 카테고리의 다른 글

현재 진행 상황을 정리하자.  (0) 2023.03.29
2월 중순 정리.  (0) 2023.02.18
1월 7일 시험 끝나고 진행할 것  (0) 2022.12.30
Just keep going  (1) 2022.12.19
다섯 걸음  (0) 2022.11.26

댓글