Job Summary
The Senior Software Engineer is responsible for understanding analytics processes and leading the design and development of IT solutions to provide the internal and external customers concrete value. This role will participate in the Agile process through domain-driven design, user story mapping, and lean process analysis to help develop epics, features, and stories that can be effectively implemented and rolled out for production use. There will also be more ad-hoc and one-off projects that require rapid development and a flexible approach while maintaining appropriate degrees of quality and rigor. The most significant responsibility for this role will be developing reference implementation patterns and working with our domain experts and Data Engineers on developing, optimizing, and deploying algorithms, machine learning, and analytics on our platforms.
Responsibilities
Actively participate in design/architectural discussions, grooming user stories, sprint demos, and daily Scrums, to help establish Domain and Behavior-Driven Development (DDD/BDD) approaches and Information Architecture
Solve challenging problems by refactoring existing processes/solutions and designing, building, and tuning new ones specifically targeting our domain-specific platform (AWS, Databricks/Spark, Streaming, ETL, ML)
Operate in a fast-paced, distributed, and agile team that ships production code every two weeks.
Support analysts, and other team members by driving clarity and actionable objectives through ubiquitous language, process definition, information architecture, and measurable outcomes
Take responsibility for department success through mentoring, coaching, and advising other team members
Requirements
Masters degree in a related area required, preferably in Computer Science, Engineering, Mathematics, Statistics, or Information Systems Or an equivalent combination of education and experience from which comparable knowledge and abiliti