입사 당시 Electron 앱은 여러 채용 플랫폼에서 지원자를 수집하고 있었다. 플랫폼마다 로그인 방식과 DOM 구조는 달랐지만, 로그인, 중복 확인, 지원자 저장, 이력서 업로드라는 큰 흐름은 같았다. 그런데 각 플랫폼 파일이 이 흐름을 모두 들고 있어 공통 동작을 바꾸려면 여러 파일을 함께 수정해야 했다.백엔드 팀의 NestJS 코드를 보면서 Controller와 Service의 책임 분리, 생성자 주입, Module의 의존성 매핑 방식을 참고했다. 다만 Electron 앱에 NestJS나 DI 컨테이너를 넣은 것은 아니다. 필요한 개념만 TypeScript 클래스와 Factory로 옮겼다.먼저 바꾸고 싶었던 것기존 구조에서는 플랫폼별 함수 하나가 다음 작업을 모두 수행했다.로그인 -> 목록 수집 ..