American Express Careers
- An experienced, hands-on, Senior Software Engineer with demonstrated ability to architect distributed systems in the context of financial/banking applications that require strong consistency, high availability and scale.
- Deep understanding of Enterprise Integration Patterns, Reactive Patterns, Event Sourcing and CQRS.
- Experience with Streaming/CEP concepts, handling of time windows: i.e. Apache Beam, Flink, Spark Streaming is a plus
- Understanding of basic mechanics of Business Rules engines/Highly configurable systems i.e. Drools, Salesforce
- Strong leadership and communicative skills. In this role, you will partner with the Engineering and Product leadership teams to develop end-to-end solutions to complex, high-impact business initiatives.
- A strategic thinker capable to clearly illustrate and sell ideas while managing risk.
- Expertise in the definition and implementation of effective software engineering practices and processes that result in high speed to market: i.e. open source style project maintainers, PR review process, issue triage, code reviews, code contribution metrics definition, test automation strategy, CI/CD optimization, etc.
- Responsible for developing proof of concepts, curate tech frameworks and ship software components that will be used as the backbone for the platform and used by tenths of developers.
This high energy Senior Engineer is expected to have:
- 7+ years of software engineering experience
- Java 8+ programming is a must. Polyglot experience (Go, node.js) is a super plus.
- Demonstrated experience with messaging brokers, specifically Kafka and Confluent Platform: Kafka Connect, Schema Registry
- Understanding and experience of Apache Avro is a plus
- Experience with Apache Spark APIs and ecosystem
- Substantial experience in an agile enterprise setting.
- Demonstrated experience with continuous integration tooling such as Jenkins pipelines
- Experience with Docker, Kubernetes. Experience with Red Hat Openshift a plus.
- Experience with Atlassian software development and collaboration tools (Bitbucket JIRA, Confluence, etc.), a plus
- Experience with microservice frameworks: Spring Boot, Dropwizard, Vert.x
- Demonstrated experience with advanced Git usage (project maintainer level). Ability to solve complex merges and code integrations
- A proven hunger to learn new technologies and translate them into working software
- Ability to effectively communicate to internal and external business partners on solution design
- Knowledge of payments industry is a plus
- Previous exposure to Domain Driven Design a plus
- Bachelor's or Master's degree in computer science, computer engineering, software engineering, or other technical discipline, or equivalent work experience
Employment eligibility to work with American Express in the U.S. is required as the company will not pursue visa sponsorship for these positions.
Schedule (Full-Time/Part-Time): Full-time