Loan voting
You are interviewing for Engineering Manager. This is a 45–60 minute whiteboard / word-problem. Talk through observations as you go. Draw.
Read this document only. Do not open the interviewer page.
Context
You work at a company that digitally captures syndicated-loan data from agent banks’ books and records and puts lenders, agents, and service providers on one permissioned platform.
The market still runs many amendment and consent processes on email, fax, conference calls, and spreadsheets. The company wants a loan voting product: agents run a vote; lenders respond; everyone can see status without a phone tree.
Assume a digital data platform already exists. It already holds facilities, positions, cash flows, and notices sourced from agents, and already exposes that data through a UI and APIs with permissioning. You are designing the voting product on top of that, not rebuilding the entire data platform.
Coverage is on the order of thousands of facilities and trillions of dollars in commitments. Users are bank operations people and lenders, not a consumer social network.
Problem
Design the loan voting system.
Agents need to start a vote on a deal (for example a refinancing, repricing, maturity extension, or other amendment), set the terms and a deadline, and see results. Lenders need to review materials and submit a vote. Some lenders manage multiple funds / legal entities. Downstream systems at the bank will want the outcome through an API.
The business wants this to feel “real time.” They also want banks to trust the result.
What to produce
- Clarify requirements. Ask questions. Write down what you are optimizing for.
- Sketch APIs or main operations.
- Draw a high-level design and walk through a request.
- Go deep on the hardest parts.
- Close as an engineering manager: what ships first, who owns what, what you measure, how you talk about risk.
You may assume a cloud environment similar to Azure. You do not need to pick a UI framework.