CV line by line¶
Interviewers read the CV top to bottom and ask about whatever catches their eye. Anything on the CV is fair game. For each line: the question it invites, the short answer, and where the deeper notes are.
Rule
If you cannot talk for 2 minutes about a word on the CV, either prepare it tonight or be ready to say honestly how deep your experience goes ("I used Terraform to change existing modules, not to design them from scratch").
Header and profile¶
| CV says | They ask | You say | Deeper |
|---|---|---|---|
| "Full-Stack (Java, React) · Finance & AI" | "Are you more backend or frontend?" | "Backend-leaning full-stack: most of my depth is Java and Spring, but I ship the React side of my own features end to end." | Java, React |
| "5 years at J.P. Morgan … mentoring juniors" | "How do you mentor?" | Code review with reasons, pairing on first tickets, reusable Copilot/Roo skills shared with the team. Fill in: one junior, what they learned | Stories |
| "Daily user of AI-assisted development" | "How do you use AI? Can you trust its code?" | "Like a fast junior: I give it context and constraints, review every line, keep tests as the judge. It speeds up boilerplate and exploration; design and review stay mine." | AI |
| "curious generalist who learns new domains fast" | "Give an example." | Exchange internals for Prayog (Disruptor, SBE, journaling) learned from Martin Fowler's LMAX article and exchange-core; group theory for Galois. | Prayog |
Portfolio Insights (May 2025 – now)¶
| CV bullet | They ask | Short answer | Deeper |
|---|---|---|---|
| Own full-stack features end to end for Model Portfolios used by financial advisors | "What is a model portfolio? Walk me through a feature." | A model portfolio is a recommended allocation (funds and weights) that an advisor applies to many client accounts. A feature goes: discovery with the PO → design → API + UI → review → release → support. | Portfolio Insights |
| Extended models to alternatives (ALT) and separately managed accounts (SMA) | "What changed in the model? What was hard?" | ALTs (private equity, hedge funds, real estate) have different liquidity, minimums and pricing frequency; SMAs hold individual securities in the client's name. The data model and validations had to stop assuming "everything is a daily-priced mutual fund". | ALT & SMA |
| Integrated with the Heatmap fund-comparison app (incl. capital gains) | "How did you integrate two systems?" | API contract agreed with the other team, a client with timeouts and retries, a mapping layer so neither model leaks into the other, and handling when Heatmap is down. | Heatmap |
| White-labeling and co-branding on fact-sheet and trade-commentary PDFs | "How do you generate PDFs? How is branding stored?" | Branding config per advisor firm (name, logo, colours), resolved at render time into a template; logos validated and cached. | White-labeling |
| Fund suitability (correlation vs. existing portfolio) and single-click analysis | "How do you compute correlation? Where does it run?" | Pearson correlation of return series over a common window; fund vs. the portfolio's weighted returns. | Suitability |
| Zero-downtime blue/green EKS and EMR migration | "How did you guarantee zero downtime?" | Stand up green next to blue, verify, shift traffic gradually, keep blue for rollback, handle Kafka consumers and in-flight jobs carefully. | Blue/green |
| Copilot, Roo Code, reusable skills; mentoring | "What is a reusable skill?" | A saved instruction set (conventions, checklists) the agent loads for a type of task so output matches team standards. | AI |
| Stack: Java, Spring Boot, React, EKS/ECS, Kafka, DynamoDB, Redis | "How do you use Kafka / DynamoDB / Redis there?" | Fill in one honest sentence each: what flows through Kafka, what DynamoDB stores, what Redis caches. | Kafka, Data |
Index Research (Jul 2021 – Apr 2025)¶
| CV bullet | They ask | Short answer | Deeper |
|---|---|---|---|
| Owned a client-reporting application with daily-operations modules, production support, security, tech debt | "What did production support look like? Tell me about an incident." | On-call for daily runs, triage with logs, fix forward or rerun, then a root-cause fix. | Index Research |
| Redesigned the database schema that limited scale, plus caching and backend optimisation | "What was wrong with the schema? How did you migrate safely?" | The schema assumed something per client that did not scale (Fill in). New normalized design, migration with backfill and verification, then caching of reference data. | Schema |
| Led Java 8 → 11 → 17 and iBatis → MyBatis; removed Sybase package | "What broke in the upgrade?" | Removed Java EE modules (JAXB), illegal reflective access becoming errors in 17, library upgrades, build plugins. Done in steps with tests at each. | Modernisation |
| End-user feedback full stack (incl. Lucene search) | "How does Lucene work?" | Inverted index: term → list of documents; analyzers tokenise; BM25 scoring. | Lucene |
| Cypress/Cucumber BDD PoC | "Why BDD? Did it get adopted?" | Scenarios in Gherkin readable by operations; Cypress drives the browser. Fill in: outcome | BDD |
| New ETF platform (FastAPI, PostgreSQL, AWS) | "Why FastAPI? What was your part?" | Fill in your part. FastAPI: async, type hints, auto OpenAPI docs. | ETF |
Projects¶
| CV bullet | They ask | Deeper |
|---|---|---|
| Prayog: matching engine (Java 21, LMAX Disruptor), journaling, replay, snapshots: ~100 ns/order, 20,000 orders/s with fsync, 23 ADRs | "Why single-threaded? How did you measure 100 ns? Why build it at all?" | Pitch & justify, numbers |
| Kafka into an idempotent post-trade ledger; p99 tail traced to GC with JFR and Prometheus; allocation cut 12–21% | "How is the ledger idempotent? Walk me through the GC investigation." | Architecture, failures |
| Personal Financial Intelligence Agent (Gemini, ADK, Vertex AI, Fi MCP): Top 700 of 57,000+ | "What did the agent do? What is MCP?" | AI projects |
| AWS AI League: city lead & SME | "What did you actually do as lead?" | AI projects |
Skills line¶
Be ready for a 1-minute answer on each. If a skill is weak, say how far it goes.
| Skill | Depth to claim (edit honestly) | Evidence |
|---|---|---|
| Java, Spring Boot, MyBatis | Strong, 5 years production | Work + Prayog |
| Lucene | Used it for a feature | Feedback search |
| Python, FastAPI, Django | Working | ETF platform, Prayog SDK and simulated traders |
| Kafka, REST | Strong for Kafka producer/consumer design | Work + Prayog publisher and ledger |
| React, Redux, Vite, JS | Strong | Work UIs, Prayog terminal (React 19, Redux Toolkit, TypeScript) |
| AWS (EKS, ECS, EMR, Lambda, Bedrock) | Working, migration experience | Blue/green migration, AI League |
| Docker, Terraform | Docker strong (Prayog: 11 containers); Terraform: Fill in | |
| DynamoDB, Redis, PostgreSQL | Working to strong | Work + Prayog ledger and leaderboard |
| Jenkins, Git, Sonar, CI/CD | Daily | GitHub Actions in Prayog and Galois |
| LLM agents, MCP, prompt/context engineering | Strong for a non-ML engineer | Hackathon, AI League, daily use |
Leadership & recognition¶
| Line | They ask | You say |
|---|---|---|
| Co-led DeepRacer for 700+ (2024); team of 6 to 2nd (2023) | "What did leading involve? How did you get 2nd?" | 2023: nobody could tell why the car made certain decisions, so I built a tool that drew what our reward function was actually rewarding on the track; that is how we climbed to 2nd. 2024: co-ran the event for 700+: schedule, workshops, leaderboard, support. |
| Won SEPathon (2022), Induction Program (2021) with an algo-trading training app | "What did you build?" | The induction app taught algo trading against an exchange I couldn't see inside, which is why I later built Prayog. Fill in SEPathon's idea. |