The first round was pretty good, typical React state management/general JS Codepen-style questions. You should know useState, useEffect, and useRef for this (I know you typically don't use useRef in a user data-driven site, but that was one of the questions). There were also more than a few questions about your work experience. I was told I did well on this part, and I generally enjoyed my time with the initial interviewers.
Round two was a completely different story. They brought in two other developers who proceeded to "soft-grill" me in heavily accented English on React, particularly on React performance and code splitting, and created a hostile atmosphere. It wasn't as bad as some grillings I've gotten at other firms, but it was definitely a mostly one-sided conversation. If you've interviewed a bunch or have been in tech long enough, you know what I'm talking about. During the second code assessment project, they expected me to create the data, which, under the time constraints, added more unnecessary pressure.
Onboarding sounded like hellish amounts of documentation to go through to become productive.
Considering the initial recruiter payout offer, save yourself the time and heartbreak and skip this opportunity unless you think working at Amex would be a big career stepping stone.
Background information
Promises/Async
Code splitting with React (e.g., React.lazy imports). They were extremely big on this. It's not a bad policy, but if you haven't worked on giant sites before, you might not have run into it.
The following metrics were computed from 1 interview experience for the American Express Senior Front End Developer role in New York, New York.
American Express's interview process for their Senior Front End Developer roles in New York, New York is extremely selective, failing the vast majority of engineers.
Candidates reported having very negative feelings for American Express's Senior Front End Developer interview process in New York, New York.