# Developer III
**Role:** Software Engineer · **Level:** G
**Company:** [BNY Mellon](https://scaleengineer.com/companies/bny-mellon)
**Difficulty:** Medium to Hard
**Salary:** US$120000 - US$150000
**Experience:** 5 - 8
**Timeline:** ~14 days
This interview process is for a Software Engineer role at BNY Mellon, specifically for a Developer III position (Level G). It is designed to assess a candidate's technical proficiency, problem-solving skills, and cultural fit within the organization.
Canonical: https://scaleengineer.com/interviews/bny-mellon/g-software-engineer
---
## Overall evaluation

- Technical Skills
- Communication Skills
- Teamwork and Collaboration
- Cultural Fit

## Questions asked

- Write a function to reverse a linked list.
- Given an array of integers, find the contiguous subarray with the largest sum.
- Design a system to handle real-time stock price updates.
- Explain the difference between a process and a thread.
- Tell me about a time you failed and what you learned from it.
- How would you optimize the performance of a slow database query?
- Describe your experience with CI/CD pipelines.
- What are the advantages of using a NoSQL database over a SQL database in certain scenarios?
- How do you handle concurrency issues in your code?
- Walk me through a project you are particularly proud of.

## Preparation tips

### lists

- Thoroughly review your resume and be prepared to discuss every project in detail.
- Practice coding problems focusing on data structures, algorithms, and object-oriented design.
- Understand common system design principles and be able to discuss trade-offs.
- Prepare for behavioral questions using the STAR method (Situation, Task, Action, Result).
- Research BNY Mellon's business, values, and recent news.
- Prepare thoughtful questions to ask the interviewers.
- Understand the specific technologies mentioned in the job description.

### studyPlan

- {"title":"Data Structures and Algorithms","longDescription":"Weeks 1-2: Focus on core data structures (arrays, linked lists, trees, graphs, hash maps) and algorithms (sorting, searching, dynamic programming, recursion). Practice implementing these in your primary programming language. Review Big O notation for time and space complexity.","shortDescription":"Weeks 1-2: Data Structures & Algorithms (DSA) fundamentals. Practice coding."}
- {"title":"Object-Oriented Design","longDescription":"Weeks 3-4: Deep dive into object-oriented programming (OOP) principles (encapsulation, inheritance, polymorphism, abstraction). Study design patterns (e.g., Singleton, Factory, Observer) and their applications. Practice writing clean, maintainable, and scalable code.","shortDescription":"Weeks 3-4: Object-Oriented Programming & Design Patterns. Code quality."}
- {"title":"System Design","longDescription":"Weeks 5-6: Learn system design concepts. Focus on scalability, availability, reliability, and performance. Study topics like load balancing, caching, database design (SQL vs. NoSQL), message queues, and microservices architecture. Practice designing common systems (e.g., URL shortener, Twitter feed).","shortDescription":"Weeks 5-6: System Design principles. Scalability & Architecture."}
- {"title":"Behavioral and Company Fit","longDescription":"Week 7: Prepare for behavioral and situational questions. Reflect on past experiences related to teamwork, problem-solving, leadership, and handling challenges. Use the STAR method to structure your answers. Research BNY Mellon's values and mission.","shortDescription":"Week 7: Behavioral questions (STAR method) & Company Research."}
- {"title":"Mock Interviews and Final Preparation","longDescription":"Week 8: Mock interviews with peers or mentors. Focus on articulating your thought process clearly and concisely. Review any areas you feel weak in. Prepare a list of insightful questions to ask the interviewers.","shortDescription":"Week 8: Mock Interviews & Final Review. Prepare questions."}

## Location differences

- {"location":"New York","differences":{"tips":["Research the specific technologies used by the team in this location.","Be prepared to discuss projects that align with the business needs of the region.","Network with current employees in the specific office to gain insights."],"interviewFocus":["Deep dive into specific technologies relevant to the team's stack.","Problem-solving scenarios tailored to local market challenges.","Understanding of local regulatory compliance if applicable."],"commonQuestions":["Discuss a challenging technical problem you solved in a previous role.","How do you approach debugging complex issues?","Describe your experience with cloud platforms (AWS, Azure, GCP).","Explain the principles of RESTful API design.","What are your thoughts on microservices architecture?"]}}
- {"location":"London","differences":{"tips":["Highlight your experience working in diverse and remote teams.","Be ready to discuss how you contribute to a positive team culture.","Emphasize your ability to adapt to different working styles."],"interviewFocus":["Collaboration and teamwork within a distributed environment.","Experience with scaling applications for a global user base.","Understanding of internationalization and localization."],"commonQuestions":["Tell me about a time you had to mentor junior engineers.","How do you ensure code quality and maintainability?","Describe your experience with Agile methodologies.","What are the trade-offs between different database technologies?","How do you handle production incidents?"]}}
- {"location":"Pune","differences":{"tips":["Showcase your passion for technology and continuous learning.","Be prepared to discuss innovative solutions you've implemented.","Understand BNY Mellon's strategic goals and how technology contributes."],"interviewFocus":["Innovation and forward-thinking solutions.","Experience with emerging technologies.","Problem-solving in a fast-paced, evolving market."],"commonQuestions":["How do you stay updated with the latest industry trends?","Describe a project where you had to make significant architectural decisions.","What are your thoughts on containerization (Docker, Kubernetes)?","How do you approach performance optimization?","Tell me about a time you disagreed with a technical decision and how you handled it."]}}

## Round 1: Data Structures and Algorithms Round
**Type:** Technical Interview (Coding) · **Difficulty:** Medium · **Duration:** 45 min
Coding challenge focusing on data structures and algorithms.
This initial technical round focuses on assessing your core programming skills. You will be asked to solve one or two coding problems, typically involving data structures and algorithms. The interviewer will evaluate your approach to problem-solving, your ability to write clean and efficient code, and your understanding of time and space complexity.
**Interviewers look for:** Strong grasp of fundamental data structures and algorithms.; Ability to translate a problem into code.; Logical thinking and systematic approach to problem-solving.; Clear communication of thought process.
**Evaluation criteria:** Correctness of the solution.; Efficiency of the solution (time and space complexity).; Code readability and maintainability.; Problem-solving approach.; Ability to explain the solution.
**Common rejection reasons:** Inability to articulate thought process clearly.; Lack of fundamental understanding of data structures and algorithms.; Poor coding practices.; Inability to solve even basic coding problems.
## Questions

- Implement a function to find the kth smallest element in an unsorted array.
- Given a binary tree, determine if it is a valid binary search tree.
- Write a function to check if a string is a palindrome, ignoring non-alphanumeric characters and case.

## Preparation tips

- Practice coding problems on platforms like LeetCode, HackerRank, or AlgoExpert.
- Focus on understanding the underlying concepts rather than just memorizing solutions.
- Be prepared to explain your thought process step-by-step.
- Practice writing code on a whiteboard or in a simple text editor without IDE assistance.

## Round 2: System Design Round
**Type:** System Design Interview · **Difficulty:** Hard · **Duration:** 60 min
Design a scalable software system based on a given problem statement.
This round assesses your ability to design and architect software systems. You'll be presented with a high-level problem (e.g., design a URL shortener, a social media feed, or a rate limiter) and expected to discuss various aspects like data modeling, API design, scalability, fault tolerance, and technology choices. The focus is on your thought process and ability to make informed trade-offs.
**Interviewers look for:** Ability to design complex systems from scratch.; Understanding of distributed systems principles.; Knowledge of various architectural patterns.; Pragmatic approach to problem-solving.; Ability to justify design decisions.
**Evaluation criteria:** Scalability of the proposed solution.; Availability and reliability considerations.; Choice of appropriate technologies and data stores.; Understanding of trade-offs.; Clarity and structure of the design.; Ability to handle constraints and requirements.
**Common rejection reasons:** Inability to design scalable and robust systems.; Lack of understanding of trade-offs in design choices.; Poor consideration of edge cases and failure scenarios.; Inability to communicate design effectively.
## Questions

- Design a system like Twitter's news feed.
- Design a distributed key-value store.
- Design an API rate limiter.

## Preparation tips

- Study common system design interview topics and patterns.
- Practice designing systems for scale and high availability.
- Understand different database types (SQL, NoSQL) and their use cases.
- Familiarize yourself with caching strategies, load balancing, and message queues.
- Be prepared to draw diagrams and explain your design clearly.

## Round 3: Behavioral and Managerial Round
**Type:** Behavioral and Managerial Interview · **Difficulty:** Medium · **Duration:** 45 min
Assesses behavioral competencies, teamwork, and cultural fit.
This round focuses on your behavioral and situational responses, as well as your overall fit within the team and BNY Mellon. You'll be asked questions about your past experiences, how you handle specific work scenarios, your strengths and weaknesses, and your career goals. The interviewer aims to understand your personality, work ethic, and how you contribute to a positive team environment.
**Interviewers look for:** Evidence of collaboration and teamwork.; Ability to handle conflict and challenging situations.; Proactiveness and ownership.; Alignment with company culture and values.; Passion for technology and continuous learning.
**Evaluation criteria:** Alignment with BNY Mellon's values.; Teamwork and collaboration skills.; Problem-solving approach in non-technical contexts.; Communication clarity and effectiveness.; Motivation and career aspirations.; Cultural fit.
**Common rejection reasons:** Lack of self-awareness.; Inability to provide specific examples for behavioral questions.; Poor communication or interpersonal skills.; Negative attitude or lack of enthusiasm.; Mismatch with company culture or values.
## Questions

- Tell me about a time you had to work with a difficult colleague. How did you handle it?
- Describe a project where you faced a significant technical challenge. How did you overcome it?
- What are your strengths and weaknesses?
- Why are you interested in BNY Mellon?

## Preparation tips

- Prepare specific examples using the STAR method for common behavioral questions.
- Reflect on your past projects and identify situations that demonstrate teamwork, leadership, problem-solving, and resilience.
- Research BNY Mellon's mission, values, and culture.
- Be ready to discuss your career aspirations and why you are interested in this role.
- Show enthusiasm and a positive attitude.
