1. 잘하는 사람들 코드라고 해서 보면 그냥 옛날에 쓰던 레거시 그대로 가져와서 수정없이 쓰는 방식으로 작업합니다.
(잘하는 사람 기준이 무조건 빠르게 돌아가게 만든 다음 던져주고 신규개발 착수하는 것이라 더 그런거 같습니다.)

2. 위와 같은 맥락인데, 성능적인 고민이나 모듈화 등으로 고민하는 사고방식을 허용하지 않습니다. 해당 고민으로 질문을 하면 심하면 욕설도 들을 수 있습니다. 그런 고민할 시간에 구현부터 완성하라는 것이죠.

3. 당연히 전반적인 코드의 품질이 형편없습니다.. 유지보수가 불가능할 정도라고 판단하고 일부는 캡슐화시켜버리고 새 객채에서 작업했는데, 5년차 개발자라는 사람한테 왜 남들 알아보기 힘들게 분리시키냐고 핀잔을 듣습니다.
그러나 역할분리도 안된 4천줄짜리 소스파일은 알아보기가 쉽습니까?

4. 테스트를 하라고 그렇게 강조를 하는데, 코드에서는 단위테스트의 흔적을 찾아볼 수 없습니다. 물론 반드시 단위테스트를 쓰지 않고도 테스트를 하는 여러 기법이 있는 것은 압니다. 그러나 운영서버에서 배치를 돌려 받아온 데이터를 통해 일일히 버튼 눌러가며 테스트하는건 통합테스트에 가까우며 보다 비효율적인 방식이 아닐지요? 사내에 단위테스트 프레임워크를 사용할 줄 알고 간단하게나마 스모킹 테스트도 가능한 사람이 저 뿐인줄로 압니다.

저는 아직도 궁금합니다. 기술적인 도움은 그다지 받은 적도 없는데 왜 신규개발을 2주만에 마쳐야 하는건지,
객체 역할 분리로 모듈화 시키는게 뭐가 그렇게 나쁜 코딩 방법이라는건지..

그분들 입장에서 제 소스코드가 나쁘게 보일 수 있습니다. 그러면 경력자 입장에서 보다 구체적으로 근거를 짚어주면 더 고마울 것 같습니다. 소스파일 하나에 모두 몰아넣는게 더 보기 편하다는 말 말구요.