← Bank of America Interview Insights

Bank of America·Software Engineer·Technical Phone Screen·Intermediate

Intermediate
Jun 2026

Summary

Brief technical screen for a software engineer role, focused on a chargeback ingestion system. Not much to report, pretty narrow scope.

Questions Asked (1)

Q1

Walk me through how you would design a chargeback ingestion system that exports finalized transactions to CSV and sends them to a payment network via FTP on a scheduled basis.

System DesignTechnical Trade-offsAPI & Integrations
Author's notes

The CSV-to-FTP pipeline part felt almost too simple to talk about for long, but there's actually a decent amount hiding in there around scheduling, failure handling, and idempotency.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying requirements and constraints, then outline a high-level architecture covering ingestion, processing, storage, and export. Dive into key components like idempotency, scheduling, file formatting, and secure FTP transfer, while discussing trade-offs and failure handling.

Pro tip: Emphasize reliability and reconciliation: banks care deeply about not losing or duplicating transactions. Mention how you'd handle partial failures, retries, and audit trails to demonstrate production maturity.

1. Clarify Requirements and Constraints

Ask about volume, latency, file size limits, security requirements, and the payment network's FTP specifications. Confirm whether ingestion is real-time or batch, and what 'finalized' means.

2. Design Ingestion and Storage

Propose a durable ingestion pipeline (e.g., message queue or API) that validates and stores transactions in a database with status tracking. Ensure idempotency to handle duplicates.

3. Implement Export and Scheduling

Design a scheduled job that queries finalized transactions, generates CSV files with proper formatting, and handles large datasets via chunking or streaming. Use a scheduler like cron or a workflow orchestrator.

4. Secure FTP Transfer and Error Handling

Use SFTP/FTPS with key-based auth, and implement retries with exponential backoff. Log transfer status and alert on failures. Consider checksums to verify file integrity.

5. Address Trade-offs and Operational Concerns

Discuss trade-offs between batch size and frequency, synchronous vs asynchronous processing, and how to handle reconciliation, monitoring, and audit requirements.

Key Points to Mention

  • Idempotency and exactly-once processing to avoid duplicate chargebacks
  • Scheduling mechanism (e.g., cron, Airflow) and handling of missed runs
  • CSV formatting details: headers, delimiters, escaping, and encoding
  • Secure FTP (SFTP/FTPS) with authentication, encryption, and retry logic
  • Failure handling: dead-letter queues, alerting, and manual intervention
  • Reconciliation and audit trails to ensure all finalized transactions are exported and acknowledged

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.