- Senior
- Office in Mexico City
At American Express, our culture is built on a 175-year history of innovation, shared values and Leadership Behaviors, and an unwavering commitment to back our customers, communities, and colleagues. As part of Team Amex, you'll experience this powerful backing with comprehensive support for your holistic well-being and many opportunities to learn new skills, develop as a leader, and grow your career.
Here, your voice and ideas matter, your work makes an impact, and together, you will help us define the future of American Express.
How will you make an impact in this role?
Most of our software development focuses on delivery new features while optimizing existing systems, building infrastructure, and eliminating work through automation. As part of the SRE team, you’ll have the opportunity to manage the complex challenges at scale which are unique to American Express, while using your expertise in coding, algorithms, complexity analysis and large-scale system design. SRE's culture of diversity, intellectual curiosity, problem solving, and willingness is key to its success. Our organization brings together people with a wide variety of backgrounds, experiences, and perspectives. We encourage them to collaborate, think big and try new things in a blame-less environment. We promote self-direction to work on meaningful projects, while we also strive to create an environment that provides the support and mentorship needed to learn and grow.
As a Site Reliability Engineer, you will be a part of a global Site Reliability Engineering (SRE) organization, and partner with the Core Engineering and Platform Teams. You will work with engineering and product partners to ensure alignment between the organizations and contribute to the key strategic efforts. In this role, you will model and mentor talent across the pillars to ensure SRE is influential across the substantial product area engineering efforts.
Responsibilities include:
- Performs technical aspects of software reliability for assigned applications including design, developing prototypes, and coding assignments.
- Function as a leader on an agile team by contributing to software builds through consistent development practices (tools, common components, and documentation)
- Participate in architectural decisions to ensure software transaction flows are appropriately supported and designed.
- Lead code reviews and automated testing
- Debug software components and identify code defects for remediation.
- Consults with teams to build standards that drive the highest levels of availability.
Responsible for evaluating and implementing orchestration, automation, and tooling solutions to ensure consistent processes and repetitive tasks are performed with a higher level of accuracy and reduced defects.
- Drive monitoring requirements to ensure business-service level visibility for all support teams.
- Provides mentorship to software engineers related to design patterns that are resistant to failure.
- Build, implement and advise on recovery tooling to adhere to enterprise standards and/or frameworks.
- Influence team members with creative changes and improvements by challenging status quo and demonstrating risk taking.
Build, implement and advise on recovery tooling to adhere to enterprise standards and/or frameworks.
Introduce new and impactful technologies to the production support tool chain that help minimize friction for production releases and support, and more quickly diagnose and recover from production incidents.
- Be an efficiency multiplier for your team by analyzing your workflow and driving the team to be more effective, productive, and demonstrating faster and stronger results.
- Partner with appropriate supporting teams to ensure operational readiness throughout the application lifecycle.
- Facilitate the resolutions of non-application issues (3rd party upstream and downstream issues, infrastructure issues, storage, database, network, file transfer etc.)
- Lead the team to implement SRE best practices around observability and resiliency.
Minimum Qualifications:
- At least 8 years of proven experience with system design, algorithms, data structures, analysis, and software design.
- Bachelor’s degree or equivalent experience in computer science, Technology, or Engineering.
- Experience working in a 24/7 environment with on-call responsibilities to provide support to production support on a need basis.
- Proven understanding of cloud native principles: service discovery, circuit breakers, observability, distributed tracing, automation and monitoring tools.
- Demonstrated leadership and management experience in working with multi-functional, geographically dispersed teams on complex projects.
- Understands team dynamics and experienced at building teams that deliver results.
- Relentless drive to innovate in process and software to better meet the needs of our customers.
- Good Understanding monitoring technologies including logging, time-series or machine-learning products from a product owners’ point of view.
- Knowledge of configuration management, release automation, and orchestration technologies
Preferred Qualifications:
- Experience in a broad range of software development and operations technologies such as Cloud Infrastructure, virtualization, load balancing, containers, JVM’s, web servers, application debugging, queueing technologies, caching technologies, databases (RDBMS and NoSQL), routing and switching, etc.
- Experience in modeling and architecting complicated business domains and associated methodologies/paradigms: i.e. Domain Driven Design, Event Sourcing, CQRS.
- Proven track record implementing minimalistic event driven microservices chassis (not just Spring), i.e. Quarkus/Vert.x, Micronaut, Javalin, Ktor or non-JVM: Javascript, Go.
- Excellent understanding of application development languages/platforms (Java, .NET, Go, Python, etc.) and importance of APIs and REST based services
- Excellent problem-solving, written, interpersonal and communication skills that drive executional impact at scale.
- Combines deep technical expertise, a continuous improvement and automation approach, and systematic and rational root cause analysis to find opportunities to make things faster and better.
- Appetite for trying new things and motivating change in a large and sometimes slow-moving organization.
We back you with benefits that support your holistic well-being so you can be and deliver your best. This means caring for you and your loved ones' physical, financial, and mental health, as well as providing the flexibility you need to thrive personally and professionally:
- Competitive base salaries
- Bonus incentives
- Support for financial-well-being and retirement
- Comprehensive medical, dental, vision, life insurance, and disability benefits (depending on location)
- Flexible working model with hybrid, onsite or virtual arrangements depending on role and business need
- Generous paid parental leave policies (depending on your location)
- Free access to global on-site wellness centers staffed with nurses and doctors (depending on location)
- Free and confidential counseling support through our Healthy Minds program
- Career development and training opportunities
Offer of employment with American Express is conditioned upon the successful completion of a background verification check, subject to applicable laws and regulations.
*!
Apply Now