근태 및 휴가 관리, 근무 설정, 고용지원금 신청 자동화, 법정의무교육, 노무사 구독서비스 등을 제공하는 B2B 인사관리 서비스 플랫폼
사용 기술 = [TypeScript, React.js, Styled-components, Redux-toolkit, Redux-Saga, Jest, Cypress, Yarn workspace, Lerna];
- JSP 레거시 프로젝트 React로 전환
초기에는 레거시 코드인 JSP로 유지보수 및 개발하였고 서비스가 확장되면서 React로 전환하였습니다.
- 디자인 시스템 도입
JSP에서 React로 전환할 기회가 생기면서 디자인 시스템을 도입하게 되었습니다.
- 컴포넌트의 재사용성을 극대화 하기 위하여 Atomic design pattern을 참고하여 프로젝트 구조 설계
- 일관성 있는 UI 제공 및 개발 생산성 개선
- 인사관리서비스
인사담당자가 직원들의 근태를 관리 하거나 사업장의 근무 환경을 설정 할 수 있는 서비스를 개발했습니다.
- 근태, 휴가, 결재 현황 등의 데이터를 조회할 수 있는 근태관리 기능 개발
- 부서의 추가, 삭제 등의 기능을 하는 부서 설정 페이지 개발
- 인사담당자가 직원 정보를 편집하고 관리할 수 있는 직원관리 페이지 개발
- 직원 정보 엑셀파일로 업로드, 권한부여, 인증코드 발송 등 기능 개발
- 고정형, 시차형, 자율형 등 여러 근무유형을 사업장의 니즈에 맞도록 커스텀 가능한 근무 유형을 등록할 수 있는 기능 개발
- 재택 근무시에도 직원들이 근태기록을 할 수 있도록 근무지를 설정할 수 있는 기능 개발
- 직원 정보에 등록된 주소를 기반으로 GPS 좌표를 구하여 설정된 반경 내에서 근무할 수 있는 기능 개발
- 주소를 검색하거나 지도상 핀을 움직여 원하는 지점과 원하는 반경으로 새로운 근무지를 추가할 수 있는 기능 구현
- 다양한 옵션을 커스텀하여 휴일 및 휴가를 생성, 부여, 삭제 하는 등의 기능 개발
- 랜딩페이지 개발
노무구독, 고용지원금신청, 법정의무교육에 대한 랜딩페이지의 UI 및 기능 개발을 했습니다.
- 고용지원금신청 - 예상금액 확인 및 신청 기능 개발
- 법정의무교육 - 4대 필수 의무교육을 신청할 수 있는 기능 개발
- Mono-repo 도입
같은 디자인이지만 도메인이 다른 서비스가 많아지면서 공통으로 사용되는 컴포넌트의 효율적인 관리가 필요했습니다.
- yarn workspace와 lerna를 사용하여 Mono-repo 도입
- 공통으로 사용되는 컴포넌트에 변경이 있을때 해당 컴포넌트를 사용하는 프로덕트 패키지의 수 만큼 반복하여 작업하지 않도록 개발경험 개선
- 테스트 도입
Unit test와 E2E 테스트를 하기 위해 Jest와 Cypress를 도입했습니다.
더보기