목차
본문
· 자유양식
면접 목차
1. 쿠콘 SW개발 신입으로서 어떤 개발자로 일하고 싶습니까
2. 대외 연동 API에서 장애가 발생했을 때 우선순위와 대응 절차를 어떻게 잡겠습니까
3. 금융 데이터와 같은 민감정보를 다룰 때 개발자가 반드시 지켜야 할 원칙은 무엇입니까
4. 성능과 안정성을 동시에 요구받는 상황에서 어떤 기준으로 트레이드오프를 판단하겠습니까
5. 레거시 코드와 빠른 요구사항 변경이 공존할 때 품질을 지키는 방법은 무엇입니까
6. 협업 중 의견 충돌이 생겼을 때 어떻게 합의에 도달하겠습니까
7. 입사 후 1년 3년 5년 관점에서 성장 계획을 말해 보세요
본문
· 자유양식
저는 소프트웨어 개발을 기술의 집합이 아니라, 신뢰를 설계하는 일로 배웠습니다. 기능이 돌아가는 것과, 서비스가 믿을 만한 것은 완전히 다른 문제입니다. 특히 금융과 데이터 연동 영역에서는 속도보다 먼저 신뢰가 요구됩니다. 한 번의 오류는 단순한 버그가 아니라, 누군가의 거래, 누군가의 업무, 누군가의 일상을 중단시키는 사건이 됩니다. 저는 그 무게감을 회피하지 않는 개발자가 되고 싶습니다. 쿠콘이 가진 본질도 여기에 있다고 봅니다. 다양한 기관과 서비스 사이를 연결하는 개발은 겉으로는 데이터가 흐르는 길을 만드는 일이지만, 실제로는 책임과 검증과 통제의 체계를 만드는 일입니다. 저는 이 일에 매력을 느꼈고, 신입으로서 가장 빠르게 성장할 수 있는 환경 역시 이런 본질을 가진 조직이라고 판단했습니다.
제가 가진 강점은 크게 세 가지입니다. 첫째, 문제를 코드 단위로 보지 않고 시스템 단위로 보는 습관입니다. 둘째, 개발 속도를 높이는 방법을 무리한 야근이 아니라 표준화와 자동화에서 찾는 태도입니다. 셋째, 말로 설득하기 전에 로그와 지표로 설명하는 방식입니다. 저는 개발을 하며 ‘어떻게 구현할까’보다 ‘왜 이 구현이 안전한가’를 먼저 묻는 편입니다. 그래서 처음부터 테스트 전략, 예외 흐름, 관측 가능성, 배포 이후의 운영까지 같이 설계하려고 합니다.
제가 시스템 관점을 갖게 된 계기는 한 번의 실패 경험에서 시작됐습니다. 팀 프로젝트에서 외부 연동을 붙여 데이터를 수집하고 가공해 화면에 보여주는 기능을 만들었는데, 기능 자체는 시연에서 잘 돌아갔습니다. 문제는 그 다음이었습니다. 사용자 수가 늘자 응답이 지연되고, 간헐적인 타임아웃이 발생했고, 재시도가 겹치면서 전체 처리량이 무너졌습니다. 저는 처음에 서버를 더 올리면 된다고 생각했지만, 원인은 훨씬 기초적이었습니다. 요청 패턴이 일시적으로 몰리는 구간이 있었고, 동기 처리 구조가 병목을 만들고 있었으며, 실패 시 재시도 정책이 제어되지 않아 연쇄 부하를 만들고 있었습니다. 그때 깨달았습니다. 개발자는 기능을 만드는 순간 끝나는 사람이 아니라, 기능이 환경에 노출된 뒤의 행동까지 책임지는 사람이라는 것을요.
그 이후 저는 문제를 다룰 때 항상 순서를 정했습니다. 첫째, 현상부터 쪼개고, 둘째, 재현 조건을 만들고, 셋째, 관측 가능한 지표를 마련하고, 넷째, 바꾼 뒤에 다시 검증합니다. 같은 문제라도 재현과 검증이 없으면 ‘운 좋게 해결된 것’으로 끝나고, 그 해결은 반복되지 않습니다. 저는 이 습관을 통해 개발의 실력을 쌓았습니다. 예를 들어 성능 문제가 생기면 무조건 쿼리를 의심하거나 캐시를 붙이는 식의 즉흥적 처방을 하지 않습니다. 병목이 어디에서 발생하는지, 네트워크인지, 애플리케이션 레이어인지, 데이터 레이어인지, 외부 의존성인지부터 구분합니다. 그리고 개선을 할 때도 한 번에 크게 바꾸기보다, 영향 범위를 통제 가능한 단위로 나눠 단계적으로 적용합니다. 금융 데이터 연동처럼 안정성이 중요한 영역에서는 특히 이런 방식이 필요합니다.
제가 자동화와 표준화를 중시하게 된 것도 같은 이유입니다. 신입일수록 실수는 할 수 있습니다. 중요한 건 실수를 개인의 주의력으로 막겠다는 생각을 버리는 것입니다. 저는 실수를 줄이는 가장 강력한 방법이 체크리스트와 자동화라고 믿습니다. 코드 리뷰 기준을 문서화하고, 정적 분석과 테스트를 배포 파이프라인에 연결하고, 릴리즈 전후 확인 항목을 고정하면 실수의 확률이 줄어듭니다. 그리고 실수의 확률이 줄어들면 팀 전체의 속도는 오히려 빨라집니다. 쿠콘처럼 연동 대상이 많고 장애의 파급이 큰 환경에서, 이런 체계화는 곧 경쟁력입니다.
저는 데이터에 민감한 분야에서 개발자가 가져야 할 윤리 감각도 중요하게 생각합니다. 개인정보와 금융 정보는 단지 법을 지키는 수준으로는 부족합니다. 사용자가 체감하는 상식 수준까지 고려해야 합니다. 최소 권한, 최소 수집, 목적 제한, 보관 기간 준수, 로그와 접근통제, 마스킹과 암호화 같은 기술적 장치가 필요하고, 동시에 개발 과정에서의 태도도 필요합니다. 예를 들어 개발 편의 때문에 운영 데이터를 그대로 가져와 테스트하는 문화는 반드시 사고로 이어집니다. 저는 개발자의 윤리는 선언이 아니라 습관이라고 생각합니다. 데이터가 어떤 경로로 들어오고, 어디에 저장되며, 누가 접근할 수 있고, 언제 삭제되는지까지 설명 가능해야 합니다. 저는 이런 기준을 개발의 기본값으로 두고 움직입니다.

분야