실제 내 눈으로 본 사례임
- API 입력 받는 클래스 CommonSearch라고 이름 짓고 그 안에 필드 수천개 박아놓음. 모든 API 입력에 이거 가져다 씀
- 응답은 무조건 Map<String, > 또는 List<>
- 로직은 모두 쿼리 몰빵. 수천줄짜리 쿼리 한두개가 아님
- 유닛 테스트 0개, 커버리지 0%
- 모든 인증/인가처리 파라미터로 받고 API 개별로 처리함
- 컬렉션 등 제네릭들 전부 Raw type으로 사용함
- 모든 값 비교는 a.toString().equals(b.toString()) 형태로 만들어놓음
- 빌드 도구 없음 (필요한 라이브러리는 jar 폴더 하나에 몰아놓음. 의존성관리? 그딴거 없음)
- 배포 도구 없음 (손수 빌드 후 수동 배포)
- 모니터링/진단 도구 없음
- 조금이라도 애매하면 다 common 쳐박음. 덕분에 common mapper는 파일 하나가 5만라인 넘어감
- app에서 트랜잭션 처리하는법을 몰랐나봄. 트랜잭션 처리 필요한건 싹다 DB 프로시저 만들어서 박아놓음
- CVS 안씀. 작업한 코드 수동으로 acrodiff 써서 비교하고 합치고 앉아있음
SI 안겪어본놈들은 안믿겠지?ㅋㅋ
진짜 신기한데, 저래도 돌아는 감 ㄷㄷ
어떻게 보면 진짜 대단한 새끼들임
우리화사 테스트케이스 없이 진행함 ㅋㅋㅋㅋ
그래도 테스트를 하긴 하나보네
2022년 이야기 맞음...?
놀랍게도, 걔들은 아직도 똑같이 일 하고 있음.