Git Commit 로그와 함께 지난 3개월 회고를 간단히 해봤습니다.
1. 지난 3개월 Commit 분석
- Json: 번역과 관련된 Config 파일 수정
- vue, ts, lock, js: JS, TS와 관련된 코드 수정
- Go: Go 언어
지난 3개월 간 JS, TS, Go와 관련된 Commit이 대부분이었습니다.
이외 SQL은 n만행 이상 작성했을 것 같고 Python도 조금 다뤘던 것 같은데 Addhoc 한 분석/추출이다 보니 별도 Commit 이력은 없었습니다.
(참고) git, awk 명령어로 Commit 로그 추출하는 스크립트
1.1. git log에서 파일 수정라인 수 데이터 저장하기 (특정 저자만)
AUTHOR_NAME="저자명"
SINCE_DATE="2023-03-12"
git log --stat --author=$AUTHOR_NAME --since=$SINCE_DATE | grep "|" > author_log.txt
1.2. 파일 확장자별로 수정 라인 수 정리한 파일 만들기
awk '{ split($1, file_log, "."); printf "%s, %s\\n", file_log[length(file_log)], $3}' author_log.txt > preprocessed_log.txt
1.3. awk 명령어로 확장자별 수정 라인 수 Group by
awk '{ array[$1] += $2} END {for (i in array) { print i,array[i] }}' preprocessed_log.txt | sort -r -k 2 -n -t ","
# 출력 예시
json, 7394
vue, 7096
go, 3227
ts, 1785
lock, 1072
md, 254
php, 238
js, 182
2. 짧은 회고
- 지난 3개월 간 Go, JS(Vue), TS를 주로 사용했고, IT 경력 만 4년 만에 개발일을 하고 있다고 느끼고 있습니다.
- 데이터 파이프라인/분석 업무를 할 때는 데이터 정확도의 우선순위가 높았다면 현재 개발 업무는 마감기한의 우선 순위가 가장 높은 것 같습니다.
- 시간이 지나며 회사 동료분들에게 궁금한 것을 물어보는 게 익숙해지고 있습니다.
3. 현재 부족하다고 느껴 보충하고 싶은 점
- 개발
- Go, JS, TS 소스코드를 3개월 이전보다는 빠르게 읽을 수 있게 되었지만 Go, JS의 배열, Map, 자료형 변환 등이 익숙하지 않아 검색이 많고 개발이 오래 걸리는 것 같습니다.
- 또한 Reduce, 화살표 함수, 3항 연산자 등을 사용한 코드를 만나면 해석이 더디고 직접 해당 문법으로 코드로 구현하는 경우는 거의 없습니다.
- JS 코드에서 return 값이 promise일 때 당황하고 async, await으로 해결하긴 했지만 아직 개념적으로 잘 모릅니다.
- Go와 TS API에서 Logging 시 Context를 함께 남기고 Log들이 Datadog과 연계되는데 어떻게 연계되는 것인지 원리는 모릅니다.
- 언어 장벽 (현지팀과 영어로 소통하며 읽기는 익숙해지는데 듣기/쓰기/말하기는 익숙해지지 않습니다.)
- 인프라
- 회사에서 EKS, ArgoCD, MSK, Elastic Search, Elastic Cache, SQS, API Gateway, Lambda, SQS, DataDog 등 다양한 서비스를 사용해 봤지만 직접 구성할 줄 모르는 것들이 대부분입니다.
- 지금은 개발, 언어 장벽을 극복하는 게 급선무지만 올해 말까지는 인프라 이해도도 높이고 싶습니다.
4. 이후 액션
- 개발의 경우 부족하다고 느끼는 것들을 하나씩 정리하며 보충하기
- Go, JS 자료형 익숙해지기 (소스: 유튜브)
- JS 문법 이해하기
- JS, TS 비동기처리 정리하기
- Logging 패턴 정리 (회사 Logging 코드 보기)
- 언어 장벽
- 현재는 개발 실력을 키우는 게 우선순위가 더 높습니다.
- 하지만 가만히 있으면 언어 장벽 극복이 불가능할 것 같기에 아래 2개라도 실천할 예정입니다.
- 매일 회의 때 이야기하기 위해 준비하는 번역 문장들을 한 곳에 모으고 1주 단위로 간단히 리뷰하기 (옵시디안)
- 구문 독해 100강 중 30강 남았던 거를 8월 말까지 끝내며 영어 접하는 시간 늘리기
참고자료
1. 주경야독님 블로그, 11. Git 커밋 이력 조회 - git log, https://kin3303.tistory.com/294
2. BunnyandPooh.Com님 블로그, 그룹 바이 합계 (Group By Sum), https://bunnyandpooh.tistory.com/8
3. 물리를 좋아하는 사람님 블로그, [Bash/Shell Script] Sort 함수 정리, https://m31phy.tistory.com/152