Job Description
At Amex Offers, we are solving complex problems at scale while delivering seamless, high-impact customer experiences. As a Senior Engineer, you will play a key role in evolving our platform and driving end-to-end solutions that power our Offers ecosystem.
The ideal candidate is comfortable working across the full stack from backend systems and data layers to frontend experiences—and has experience building consumer or B2B products. You are able to move quickly while maintaining strong architectural rigor and collaborating effectively across teams.
In this role, you will partner closely with the Enterprise Architecture team to align on scalable, future-ready designs. You will lead end-to-end solution design and execution, working across multiple downstream systems and dependencies to ensure seamless integration and delivery.
You thrive in a fast-paced, evolving environment, are a strong collaborator and problem-solver, and are excited about leveraging technology to drive impactful customer experiences.
Responsibilities
- Design, develop, and maintain scalable backend systems with a strong focus on distributed data architectures.
- Architect and manage high-performance database solutions using both SQL and NoSQL technologies (e.g., PostgreSQL, Couchbase, MongoDB, Cassandra, Yugabyte, DB.
- Build and optimize data models, schemas, and query performance for large-scale, high-availability applications.
- Develop and maintain backend services and APIs that interact efficiently with distributed databases.
- Ensure data consistency, replication, partitioning, and fault tolerance across distributed systems.
- Troubleshoot and resolve database-related issues including performance bottlenecks, latency, and data integrity concerns.
- Collaborate with cross-functional teams (frontend, data, DevOps) to deliver robust, end-to-end solutions.
- Contribute to system design discussions involving data architecture, scalability, and trade-offs between SQL vs NoSQL systems.
- Implement and improve monitoring, alerting, and observability for database systems.
- Write clean, maintainable, and well-tested code following engineering best practices.
- Perform code reviews and provide constructive feedback to ensure high-quality deliverables.
- Mentor junior engineers and support knowledge sharing within the team.
- Participate in Agile ceremonies such as sprint planning, stand-ups, and retrospectives.
Qualifications
- Bachelor's degree in computer science, Computer Engineering, or equivalent practical experience.
- Strong understanding of distributed systems and database internals.
- Solid knowledge of SQL and NoSQL database technologies and their use cases.
- Understanding of concepts like data replication, sharding, indexing, consistency models (CAP theorem), and transactions.
- Proficiency in one or more programming languages (e.g., Java, Python, Go, Node.js).
- Familiarity with cloud platforms (AWS, GCP, Azure) and managed database services.
- Knowledge of performance tuning, query optimization, and database security best practices.
- 3–6 years of experience in backend engineering or distributed systems development.
- Hands-on experience with at least one SQL database (e.g., PostgreSQL) and one or more NoSQL databases (e.g., MongoDB, Cassandra, Couchbase, YugabyteDB).
- Experience designing and optimizing high-volume, low-latency data systems.