The Challenge :
Are you passionate about creating fault-tolerant services that function at scale while working with cutting edge technologies in a cloud native micro services world?
The Adobe Experience Platform is seeking a Senior Software Engineer to join its Productivity Engineering Team. We build scalable, performant services and tools to provision & manage everything needed for the Adobe Experience Platform.
We are looking for innovative and passionate software engineers with a strong interest in building low latency, high performance quality systems.
You should have practical experience in architecting and implementing fault tolerant micro-services for scale and high availability.
What you will do :
Responsible for the design, development, testing, troubleshooting, measurement, optimization, and improvement of software, new products, and code libraries across platforms.
Partners with cross functional experts (Product Management, Design, etc.) to determine customer focused solutions.
Leverages best practices, articulates ideas, & markets them across team and organization. Promotes a culture of continuous learning.
Leads application / framework / service design efforts, optimizing for quality, testability, and scale.
Uses appropriate & relevant programming languages and technologies, writes code, tests & deploys to meet business requirements.
Interacts with customers to define requirements and identify necessary modifications.
Communicates clearly with the team and management to define & achieve goals.
Be a technical leader with the ability and desire to mentor other members of the team.
What you will need to succeed :
B.S. in Computer Science or equivalent engineering degree
5+ years of experience designing and developing web or software applications
Proven expertise in Python, Java, OOP Principals, clean Design and Design Patterns
Proven expertise in designing and developing scalable, maintainable, performant and resilient application
Experience in designing and implementing micro-services and RESTful services
Unending curiosity, thoroughness, tenacity and focus on quickly designing and building complex software systems with great quality to solve customer problems
Have a good sense of organization to set expectations and keep deliverables on a timeline, with the ability to document, communicate and justify all technology decisions and directions.
Deep understanding of modern cloud technologies and design patterns for building "always-up" services
Quick learner and ability to understand complex systems
Strong interpersonal and communication skills
Working Experience with Spring Framework
Experience with Microsoft Azure
Experience with Kubernetes
Experience with Terraform
Experience with Git, CI / CD pipeline
Familiarity with monitoring systems like NewRelic, Splunk, Grafana