본문 바로가기

업무 TIL

(36)
24/10/29 화요일 업무 TIL MSA 모듈 구조를 정리하기 위해 아침부터 팀원들 간의 회의가 있었다. 또한, msa 구조로 나눠지면 기존의 엔티티 연관관계들이 끊기게 되어 HTTP 통신을 따로 해서 그 데이터를 가져와야 하는데 로컬에서 돌리려면 nginx를 사용해야 한다는 것이다.  1) Layered Architecture VS DDD한 컨트롤러가 service 파일을 주입받을 때 controller에 해당하는 application단의 service가 아니라 domain단의 data service를 주입받고 있었다. 이런 상황에서 module 정의 파일에서 provider를 import 해올 때 과연 data service 파일을 import 해와도 되는 것인가?에 대한 의문이 생겼다. 왜냐하면 기존에 module 파일에 주입되는 ..
24/10/28 월 업무 TIL 오랜만에 업무 TIL을 작성한다.본격적으로 팀장님께서 미리 푸쉬해주신 모듈(쉽게말해 폴더, msa 구조에서 모듈끼리는 침범하지 않는 것이 원칙!) 구조에 따라 채팅 모듈을 서비스별로 나누어보았다.  결론적으로 이번에 바뀌는 HTTP 통신의 경우 1) ex. A 엔티티가 B 엔티티를 참조하는 경우 FK 사용하지 않기 위해 HTTP로 서로 통신하는 것. 기존 이 두 엔티티의 FK 연관관계가 끊기는 것이 MSA이다.  2) apps 하위에 들어오는 것들은 api(여러가지), batch(1개의 파일로 관리), handler, entity,service,controller,repository 기존에 libs 하위에 data 관련의 디렉토리를 넣었는데 이제 이것은 apps 하위로 다 이동하고 libs에는 각 모듈 ..
230801 월요일 업무 TIL 8월의 시작, 화이팅! '오늘의 고민' 전체적인 API (@Get ~ @Delete 요청까지)를 설계할때 나 혼자만 구현된다고 끝낼게 아니라, 같은 기능을 가진 다른 팀원들은 어떤 식으로 짰는지 주의깊게 봐야하며, 어느정도 양식을 통일해서 API를 설계&수정하는게 좋다고 느꼈다. 나 혼자 이질적인 API를 짰어서 수정하느라 혼났다. [잘한점] 팀원이 코드 시범을 보여준 내용이 있었는데, 그 내용을 최대한 기억해서 내 코드에 적용하려는 연습을 했다. ex) map() 메소드는 await 비동기 처리가 어려우니, for...of 반복문으로 비동기 처리할 것. [개선점] 상황1) API를 설계할때 혼자서 '이거 결과값 나오네~'에서 끝내는 경향이 짙어, 나중에 리팩토링 할때 고생을 많이 하는 것 같다. 원인1..
230731 월요일 업무 TIL '오늘의 고민' Admin 작성을 위해 이전에 작성했던 API 코드를 다시 보면서 '내가 왜그랬지?'라는 생각이 들었다. 그때 그 당시 Admin 만드는 것이 우선순위가 밀려났던 부분이라 형태만 만들어놓고 크게 신경을 쓰지 않았는데, 지금 와서 보니 연관관계는 왜 이렇게 잡았고 쓸데없는 엔티티는 왜 만들어서 연관관계 복잡하게 만들었을까?라는 후회가 밀려왔다. 앞으로 코드를 짤 때 확장성 고려나 다음번에 누군가 내 코드를 볼때나 무엇보다도 내가 내 코드를 잘 보고 이해하기 위해서 이런 식으로 코드를 짜면 안된다는 생각이 들었다. 그리고 다른 팀원들과 형식을 맞춰서 작성을 해야한다는게 그리 쉽지만은 아닌 것 같다 ㅜㅜ [잘한점] 오늘은 그렇게 잘했다고 느껴지지는 않았다. [개선점] 상황1) 내가 짠 코드에 ..
230728 금요일 업무 TIL 아파서 업무에 제대로 집중하지 못한 날 ㅠ '오늘의 고민' 이전에 작성했던 코드를 다시 보니 왜 이렇게 해놨지..?라는 후회가 밀려왔다. 그리고 오랜만에 이 코드를 보니 기억이 날듯말듯 하는데, '왜 그때 이렇게 작성했을까?'라는 생각이 들었다. 나중에 봐도 내가 짠 코드는 지속적으로 팔로업을 하고 있는게 좋은 것 같다. [ 배운점 ] 배움1) Model은 entity를 메모리에 대충 저장(?)하는 것을 말한다. 의미1) model.ts 파일을 왜 만드는지 궁금했는데, in memory 형태에서 주로 쓰인다. DB 연동이 되면, Entity에서 model을 정의하기 때문에 model 작성이 필요없었던 것이었다.
230727 목요일 업무 TIL '오늘의 고민' 아침에 '리치 우먼' 책을 읽으면서 갔다. 기억에 남는 구절이 있어 적어본다. 그는 이 분야에 굉장히 풍부한 지식을 갖고 있지만, 그럼에도 그는 신참이 하는 이야기를 묵묵히 듣는다. 그가 몰랐던 새로운 것을 배우게 될지도 모르기 때문이다. 모든 것을 아는척하지 않는다. 그 덕분에 정말 많은 것을 알고 있다. [잘한점] 상황1) 코드 설명서에 모르는 영단어가 나왔다. 액션1) 개발하면서 영어 단어 뜻을 찾아보는 것도 중요한 과정이라고 생각해서 marshalling 이라는 단어를 찾아보았다. 칭찬1) 영어 단어의 뜻을 파악함으로써, 그 단어가 코드나 기능에서 무슨 역할을 하는지 유추하는 토대가 될 수 있다. [배운점] 배움1) marshalling은 직렬화(Seriallization)과 ..
230726 수요일 업무 TIL '오늘의 고민' 왜 계속 코드를 뜯어볼 생각을 안하니.. * 이런 점이 고민이 되어 업무중에 '코드 계층 구조 파악'에 대해서 찾아보았다. - 어떤 코드가 어떤 코드를 import 하는지 참고할 것 - namespace가 어떻게 명명되어있는지 보기 - 내가 이 프로그램을 만든다면? 생각해보기 > 나라면 어떻게 짰을까? - 이 코드에서 뭘 배웠나? - 이 코드를 어떻게 개선할 수 있을까? chains of actions : 아는 부분의 코드를 찾고 어떻게 작동하는지 처음-끝 추적하면서 이 코드가 어떤 역할을 하고, 파일에서 어떻게 나타내고, 어디서 이 코드가 왔는지 보기 코드의 중심은 변수 선언, 함수들의 위치이다. [잘한점] 상황1) 프론트엔드 개념도 듣는 것마다 정리를 하는 습관을 들이려고 한다. 액..
230725 화요일 업무 TIL '오늘의 고민' 사회생활은 정말 어려운 것 같다. 말을 참 잘 하기가 어려운 것 같다. [잘한점] 상황1) 프론트엔드 팀원과 테스트를 하던 중, 팀원이 생각하지 못한 테스트를 생각해냈다. 액션1) 팀원이 맞장구를 치며 '그걸 놓쳤네요'하며 내가 말한 테스트를 진행하였다. 칭찬1) 이제 조금씩 팀원이 놓친 부분을 하나씩 캐치해나가는 능력이 조금씩 생기고 있는건 아닐까?! [개선점] 문제1) 내가 작성하는 코드 로직에 대해 다른 팀원도 쓴 적이 있을까?를 생각해보지 않았던 것 같다. 원인1) 그저 내가 작성하는 로직에만 집중하고, 이게 잘 돌아가면 되는 것에 우선순위를 두는 터라, 내가 작성하는 로직에 대해서 다른 팀원들은 어떤 방식으로 작성했는지 잘 안봤던 것 같다. 오늘 쿼리빌더 update() -> u..
230724 월요일 업무 TIL '오늘의 고민' 아침에 출근하면서 킴 키요사키의 '리치 우먼'을 읽었다. 여기서 단어는 강력한 도구라고 하는데, 주식을 함에 있어서도 모르는 단어를 만나면 알때까지 찾아보고 읽고, 이해하면 독해력이 증가한다는 것이다. 이게 결국 주식이든, 영어 독해 실력이든, 개발이든 다 적용되는 분야라고 생각했다. 하지만 요즘 나는 일을 빨리빨리 끝나는데에 중점을 두다보니 이해하는 시간에 많은 시간을 할애하지 못하고 있다는 생각이 들었다. 두려움 < 용기 [잘한점] 상황1) 매일 아침 출근할때 걸어왔는데, 요즘 날씨가 더운지라 계속 헥헥대면서 사무실에 출근했다. 액션1) 하지만 오늘은 버스를 타고 출근했다. 칭찬1) 아침에 업무 시작할때 최상의 컨디션을 유지하는게 중요한 것 같다. 아침부터 걸어오느라 기빨리는 것보다는..
230721 금요일 업무 TIL '오늘의 고민' 한 주 마무리 잘 해보자! [잘한점] 상황1) 개인적으로 이전보다 더 나은 질문을 하고 있다고 느꼈다. 액션1) 팀원에게 왜 id값이 파라미터에 담기는가? 이 순서가 어떻게 되는가 등 이전보다 더 성장한 질문을 하고 있다고 나 스스로 느꼈다. 질문을 잘 하다보니 내가 원하는 답변도 제대로 얻을 수 있다. 칭찬1) 점점 더 성장하고 있다고 느끼는 요즘인데, 더 열심히 공부해서 성장해야겠다! [개선점] 문제1) DEV DB의 컬럼을 변경하고 나서 배포를 하지 않아 다른 팀원한테서 에러가 발생하였다. 원인1) DEV DB 컬럼하고 Entity 컬럼 값만 나 혼자서 바꾼 다음에 배포는 안하고 있는 상황이었는데, 다른 팀원의 터미널에서 내가 삭제했던 컬럼의 에러가 나고 있었다. 액션플랜1) DEV..