Position Details: Senior Engineer - (905983Z)
Does building a scalable suite of platform services to handle the needs of millions of consumers who engage with the Client web and app ecosystem interest you? If so, come join the Platform Engineering team in the Client Digital Engineering organization to be at the forefront of this technology movement!
Client does more than gear-up the world's best athletes. Client is a place to explore your potential, obliterate boundaries, and push out the edges of what can be. We thrive in a culture that embraces diversity and rewards imagination. At Client, it's about bringing your skills and talents to a challenging and constantly evolving game in a supportive work environment.
THE TEAM'S ENGINEERING ENVIRONMENT
While Client Digital Engineering is a big place, our team's primary concern is building a platform to improve how we engage with our consumers through targeted communications.
Our production code is usually written for the JVM, mostly in Scala, and deployed on Amazon's AWS infrastructure. We tend to prefer strong-typing and functional style over imperative style in our code. Our architecture is focused on reliability, favoring asynchronous approaches to ensure resiliency and availability.
We operate the systems we develop and have a rotating on-call schedule for off-hours contact but during office hours, the team as a whole handles incidents. Getting paged is rare.
We practice continuous delivery - every merged pull request goes directly to production with appropriate feature flagging. Our automation is typically scripted in Python with AWS CloudFormation as the backbone of our deployment architecture.
We collaborate to help each other grow our knowledge and engineering practices, encouraging frequent demos, knowledge sharing sessions, and mentoring relationships where it proves helpful to both the individual and team success.
AS A MEMBER OF THE TEAM, YOU'LL BE EXPECTED TO:
- Successfully operate within our engineering environment and help it evolve over time.
- Review your peers' technical designs, code, and tests, giving supportive feedback and asking good questions.
- Work in a collaborative environment that rewards experiments, initiative, curiosity, and mentoring.
- Leverage your interest in data and data analysis to understand our consumers and how they engage with our ecosystem.
- Practice DevOps ensuring a culture of testing and releasing software on AWS continuously using automation and monitoring.
- Partner with other engineering and product teams to loosely couple and scale the service ecosystem.
- Work with teams dedicated to content management, membership, notification delivery, and digital marketing.
TRAITS OF THE IDEAL PERSON FOR THIS JOB:
- You love to learn, grow, and effectively bring new ideas into the group.
- Your experience level could be anywhere from junior to lead, but you bring maturity and thoughtfulness to your day-to-day work.
- You have relevant professional experience or a bachelor's degree in Computer Science, Information Systems, (or another relevant field) with good working knowledge of basic computer science data structures and algorithms.
- You can design and build web services and event processors using AWS and JVM technologies.
- You have experience working in at least two different languages, ideally including Scala, Python, or Java 8+.
- Your broad spectrum of knowledge about data analysis, databases and related data storage paradigms, programming languages, and frameworks informs your decisions.
- You understand scalable, highly available, and eventually consistent distributed systems.
- You have excellent written and oral communication skills to both technical and non-technical audiences.
- You value collaboration and interaction with your teammates and colleagues, defaulting to sharing early and looking for help when needed over delivering perfect results.