Software Engineer I

Software EngineerBand 30Medium

The Software Engineer I (Band 30) interview at American Express is designed to assess foundational technical skills, problem-solving abilities, and cultural fit. Candidates are evaluated on their understanding of core computer science concepts, coding proficiency, and ability to collaborate effectively.

Rounds·3

Timeline·~14d

Experience·1 - 3 yrs

Comp band·US$85000 - US$110000

Interview time·120 min

Evaluation

What they measure.

  • Problem-solving approach
  • Coding proficiency
  • Understanding of data structures and algorithms
  • Ability to articulate thought process
  • Communication skills

Preparation

How to prepare.

Tips

  1. Review fundamental data structures (arrays, linked lists, trees, graphs, hash maps) and algorithms (sorting, searching, recursion, dynamic programming).
  2. Practice coding problems on platforms like LeetCode, HackerRank, or similar.
  3. Understand object-oriented programming (OOP) principles.
  4. Brush up on your chosen programming language's core concepts.
  5. Prepare to discuss your past projects in detail, focusing on your contributions and the technologies used.
  6. Research American Express's mission, values, and recent news.
  7. Practice answering common behavioral questions using the STAR method.
  8. Prepare thoughtful questions to ask the interviewer.

Study plan

Fig · Study plan — 04 phases

01 / 04
01

Phase 01 of 04

Data Structures and Complexity

Weeks 1-2: Data Structures (Arrays, Linked Lists, Trees, Hash Maps) & Complexity Analysis.

Weeks 1-2: Focus on core data structures like arrays, linked lists, stacks, queues, trees (binary trees, BSTs), and hash maps. Practice implementing them and solving problems involving their usage. Understand time and space complexity analysis (Big O notation).

Questions

Commonly asked.

  • Write a function to reverse a linked list.
  • Given an array of integers, find the two numbers that add up to a specific target.
  • Explain the difference between a process and a thread.
  • Describe a time you had to deal with a difficult stakeholder.
  • How would you design a URL shortener?
  • What are the principles of SOLID?
  • Tell me about a project you are proud of.
  • How do you handle code reviews?
  • What is polymorphism?
  • Describe your experience with version control systems like Git.

Locations

Regional differences.

Fig · Regions — 03 locations

01 / 03

Location

New York

Interview focus

Understanding of core Java/Python/Node.js concepts.Basic data structures and algorithms.Problem-solving approach.Communication skills.Teamwork and collaboration.

Common questions

  • Tell me about a challenging project you worked on.
  • How do you handle conflicting priorities?
  • Describe a time you made a mistake and how you learned from it.
  • What are your strengths and weaknesses as a software engineer?
  • Why are you interested in American Express?

Tips

  • Research American Express's values and recent projects.
  • Be prepared to discuss your resume in detail.
  • Practice explaining your thought process clearly.
  • Ask thoughtful questions about the role and the team.

Rounds

Round-by-round.

Expand a step for evaluation criteria, sample questions, and prep notes.

Med

Technical Interview (Coding) · 45 min · Software Engineer or Senior Software Engineer

This round typically involves a coding challenge, often presented as a live coding exercise or a take-home assignment. The interviewer will assess your ability to solve a given problem using code, focusing on your understanding of data structures, algorithms, and your coding proficiency. You'll be expected to explain your thought process, discuss potential edge cases, and optimize your solution.

What they look for

A systematic approach to problem-solving.Ability to translate a problem into code.Understanding of fundamental algorithms and data structures.Clear communication of their approach and reasoning.Ability to identify and discuss trade-offs.

Evaluation

  • Correctness of the solution
  • Efficiency of the solution (time and space complexity)
  • Code clarity and readability
  • Problem-solving approach
  • Communication of thought process

Sample questions

  • Given a string, find the first non-repeating character.

    String ManipulationHash Map
  • Implement a function to check if a binary tree is a Binary Search Tree (BST).

    TreesRecursionBST
  • Find the kth smallest element in an unsorted array.

    ArraysSortingQuickselect

Prep for this round

  1. 01Practice coding on a whiteboard or a simple text editor without IDE assistance.
  2. 02Think out loud and explain your approach before writing code.
  3. 03Consider edge cases and test your code mentally.
  4. 04Be prepared to discuss the time and space complexity of your solution.
  5. 05Ask clarifying questions if the problem statement is unclear.

Common rejection reasons

  • ×Inability to articulate thought process.
  • ×Incorrect or inefficient algorithm implementation.
  • ×Poor coding style or syntax errors.
  • ×Lack of understanding of basic data structures.

DSA

Coding questions at American Express.

Frequently reported on American Express loops

Other guides

More at American Express.