오늘은 오자마자 너무 쌓여버린 메일 정리를 시작했다.
최근에 너무 바쁘기도 하고 종료되지 않은 업무가 너무 많다보니 유지해야 했는데
L사 대형 프로젝트도 어느정도 마무리되어가고 있기도 하고
그 이전부터 명맥만 이어오던 S사 관련 유지보수성 프로젝트 등의 작업도
S사 담당자분이 육아휴직으로 장기 자리를 비우시면서 새로운 담당자분과 소통하게 됐기 때문에
메일함을 조금 깔끔하게 정리했다.
마지막 오픈모니터링 건수를 기입하면서 사용한 쿼리를 정리해서 pm분에게전달드렸고
관련 쿼리와 히스토리를 전달드린 다음 드디어 L사 관련된 내용을 조금 잊어도 될 것 같다.
S사 유지보수쪽에서 갑자기 긴급요청이라면서 다우오피스 추가 연결을 요청했는데
기존 것도 애초에 작동하지 않는데 이걸 긴급하게 처리할 필요성은 전혀 안느껴졌지만
요청한다로 빠르게연결 후 오전중에 바로 처리는 했다.
하지만 편집기 등 이상한 내용들로 마음대로 수정했고
다우오피스측에서 제공하는 공식문서를 보지 않고 반영된 부분인건지
SFDC에서 전달한 값이 들어갈 <div data-id="appContent"><br></div>가 없는 것 같았고
제목 외에 아무것도 전달되지 않아서 수정 요청을 드렸지만 해당 방법을 모르시는 것 같았기 때문에
공식문서에서 어떤 부분을 참고해야되는지 확인하고 <div data-id="appContent"><br></div>를 전달드렸다.
추가로 들어있는 값이 소문자인게 마음에 안든다고 하셨는데
확인해보니 api명칭은 소문자고 label은 대문자로 표기되고 있었는데
내부 Document Template에서는 기능 지원이 되고 있지 않았기 때문에
개발하신분에게 수정요청을 드리고 고객사에도 수정요청을 전달했다는 내용을 공유했다.
템플릿 제목도 내부적인 다우오피스 값을 사용하길 원하셨기 떄문에
Title을 전달한 다음 기존 템플릿에 들어있는 제목값들을 다 제거해서 반영 후 확인했고
하나를 제외하고 다 정상 출력되는 것을 확인하고 전달드렸다.
하나의 에러 원인을 파악해보려고 헀지만
납품 관련 문의가 들어와서 다음에 확인하기로 했는데
그 사이에 L사에서 인터페이스 관련 문의가 들어왔다.
사실 L사라고 하기보다는 L사의 협력사쪽에서 넘어온 문의인데
프로젝트가 끝나기도 했고 해당 부분에 대해 답변할 이유가 없긴 한데
파견오셔서 친하게 지내셨던 분이기 때문에 물어보는 내용과 추가적인 정보를 전달드렸다.
납품 테스트 관련 도움을 드릴 수 있냐는 문의를 주셨는데
사실상 왜 아직 안되냐고 질문을 주셨다는 것으로 받아들이고
SAP쪽에서 필수라고 주장하는 값을 SAP에서 전달하지 않고 있는데
해당 값을 어디에서 어떤 로직으로 가져와야 하는건지
아니면 SAP에서 해당 값을 원래 보내줘야 하는건지
SAP에서 누락된 부분들을 조사해서 문의한 다음
만약 실제로 없는 경우 해당 필드를 필수 해제를 해야 하는지
아니면 해당 값을 넣는 로직을 어떤 단계에서 추가해야 하는지 확인중이라는 답변을 했다.
충격적이게도 인터페이스 팀 해체 관련 내부 회의도 있었는데
사실 팀 해체까지는 하니고 팀은 유지하지만 주 업무가 인터페이스가 아니고
프로젝트 하나를 통으로 담당해서 진행하는 방식으로 될 것 같다고 하셨다.
차라리 팀이 쪼개지면 마음이 편할 수도 있을 것 같은데
팀원만 추가되면서 기존 유지보수까지 하면서 프로젝트까지 한다면 업무가 너무 과중될 것 같은데
어떻게 될지는 지켜봐야겠지만 뭔가 업무가 지나치게 올 것 같다는 불안감이 있다.
이후 납품쪽 로그를 좀 더 확인하다가 6시 30분이 넘어서 퇴근했다.
(1).백준 1343번 폴리오미노는 X 블럭을 모두 AAAA와 BB로 덮어야 한다는 조건이었는데
간단하게 BB로만 다 덮으면 되지 않나 생각하면서 추가 조건을 보니 사전순이기 때문에 A가 가능하면 무조건 먼저 들어가야 했다.
간단하게 split, join을 통해서 AAAA 먼저 변경 후 BB를 바꾸는 방식으로 진행했는데
생각해보면 replace도 괜찮을 것 같긴 했다.
어쨌거나 변경 후 아직도 X가 남아있는 경우 전체 변환이 되지 않았기 때문에 X를 출력했고
X가 없는 경우 변환 후의 결과값인 input을 출력하는 방식으로 해결했다.
만약 메모리가 부족하고 시간복잡도도 생각해야 한다면
for문으로 직접 순회하면서 x의 개수를 카운팅해서 x가 2개 연속한 경우 기록을 시작해서
X가 2개에서 중단되면 바로 BB로 변경하고
X가 3개인 시점에 4개가 되지 못하면 즉시 중단 및 -1을 출력하게 하고
X가 4개가 되면 AAAA를 str에 넣어주는 방식으로 진행하며 .은 그냥 바로 넣는 식으로 진행했으면
시간, 공간복잡도면에서 훨씬 더 절약할 수는 있겠지만
가독성은 조금 더 떨어질 수도 있을 것 같다.
이런 부분은 사실 미세하게 차이가 나기 때문에 초 대용량 변환이 아닌 이상 의미는 없을 것 같지만
그래도 간단한 문제라도 한번 더 생각이나마 하면서 푼제푸는 의미를 되새겨봐야겠다.
const input = `XX.XXXXXXXXXX..XXXXXXXX...XXXXXX`.split('XXXX').join('AAAA').split('XX').join('BB')
console.log(input.includes('X') ? -1 : input)'회고' 카테고리의 다른 글
| [개발일지] - 652(대체휴가) (3) | 2025.04.16 |
|---|---|
| [개발일지] - 651 (0) | 2025.04.15 |
| [개발일지] - 649(주말) (0) | 2025.04.13 |
| [개발일지] - 648(주말) (0) | 2025.04.12 |
| [개발일지] - 647 (0) | 2025.04.12 |
