22년 05월 4주차 회고록
2022. 5. 30. 01:13ㆍ회고록
22년 05월 4주차 회고록
오랜만의 회고록...
HotFix는 무서워
- 이번 스프린트(우리 부서는 기능 구현을 1주일 단위로 구현(?) 한다. → 기획된 기능을 일주일 잡는다고 생각하면 된다...) 에서 엑셀을 사용하여 Bulk Insert 기능을 구현을 하게 되었다.
- 어디보자... 🤔 기존 단건 등록 로직을 참고하여 Bulk 기능을 하면 되겠지? 하면서 기존 단건 등록을 분석하고 있었다. 운영팀에서 급하게 해야해서
수요일
까지 해줄 수 있는 요구사항이 들어왔다..네??? 오늘 월요일인데요??😇 - 그렇게 야근을 하게되면서 기존 코드를 빠르게 분석하고 코드를 작성했지만 중복등록... 및 exception 방어는 모두 집어쳐!! 등록만 일단 되게해 😱 일단 등록에 대한 Repository 테스트 및 통합테스트를 작성한 뒤
hotFix
브랜치를 만들고 master에 반영시켜!!!
자신없는 코드는 항상 말썽꾸러기
- 테스트코드와 방어코드를 허술하게 작성하다보니 이번 코드에는 자신이 없었다. 일단 기능구현하고 다음 스프린트에 리팩터링을 진행하기로 하였지만 역시나 배포를 진행한 뒤에 아니나 다를까 이거 안되는데요??? 라는 cs가 들어왔고,,, 다시 원인 분석을 해보니 DTO쪽에
valid 어노테이션
을 붙혀놓았던@NotBlank
가 Integer 타입에 작성되있었다..
@NotBlank
는 String 만 받을 수가 있다.@NotNull
에서는 여러 타입이 들어갈 수 있지만 @NotEmpty
나 @NotBlank
에서는 그렇지 않다.
int, long 등 수에 대한 valid 체크 고민이 있다면 @DecimalMax
, @DecimalMin
, @Max
, @Min
, @Positive
, @PositiveOrZero
, @Negative
, @NegativeOrZero
,@Digits
,@Size
등 여러 어노테이션들이 있다.
시간의 경우에는 @Future
, @FutureOrPresent
,@Past
,@PastOrPresent
들이 있다.
그 외에 @Email
,@Pattern
등도 있다는 것을 알아두도록 하자.🥹🥹🥹🥹
마지막으로..
- 급한 기능이어서 스스로 위안을 삼으면서 기능구현을 했지만 이번에 많이 부족하다는 것을 느꼈다.. ㅠㅠ 다시 RollBack을 진행하고 다시 배포를 진행하면서 CTO님과 FE팀의 Jenna와 같이 야근... 허허 정말 미안했다.. ㅠㅠㅠ (다시 한번 죄송합니다..🥲)
- 어떠한 상황에서도 방어 테스트와 코드를 잘 작성해야겠다고 느꼈고, 자기와 타협하지 않는 개발자가 되어야겠다!! 그리고 더욱 더 개발자 역량을 쌓아야겠다.
- 또한 위에서의
@Valid
어노테이션도 그냥 흩날리듯이 막 가져다 붙였다...doc
문서를 잘 챙겨 보면서 어떠한 상황, 적절한 상황인지 알고 쓰는 개발자가 되자!! 명심...!
Ps...
- 이 글을 쓰면서 해당 기능을 리팩터링 진행중입니다.
'회고록' 카테고리의 다른 글
2023년 1월 2일 회고 (0) | 2023.01.03 |
---|---|
22년 6월 2주차 회고록 (0) | 2022.06.16 |
주니어개발자가 되기 위한 일곱번째 회고록 (0) | 2021.06.02 |
주니어개발자가 되기 위한 여섯번째 회고록 (0) | 2021.04.26 |
주니어 개발자를 위한 다섯번째 회고록 (0) | 2021.04.19 |