행궁동 데이터 엔지니어

반응형

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. 이후 액션

  1. 개발의 경우 부족하다고 느끼는 것들을 하나씩 정리하며 보충하기
    • Go, JS 자료형 익숙해지기 (소스: 유튜브)
    • JS 문법 이해하기
    • JS, TS 비동기처리 정리하기
    • Logging 패턴 정리 (회사 Logging 코드 보기)
  2. 언어 장벽
    • 현재는 개발 실력을 키우는 게 우선순위가 더 높습니다.
    • 하지만 가만히 있으면 언어 장벽 극복이 불가능할 것 같기에 아래 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

반응형

이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band