Senior Software Engineer – Machine Learning

Location: Pittsburgh

Job Type: Full Time / Permanent

Our Software Engineering team are key disruptors. As a Senior Software Engineer, you will help us drive our key retail disruption initiatives through technology that matters. Product information has become more important than ever in meeting our customer’s needs. Complete and accurate information around our catalog of products is essential to drive enhancements in customer experience, online conversion, analytics, and data science. Our Product Information Management team plays a central role within technology to help facilitate these goals. We empower our engineers to tear down the silos and work collaboratively with their product team to deliver solutions. We work in nimble product teams composed of engineers, designers, and product managers that aren’t bogged down by project plans and politics, but are empowered to continuously create, test and execute. One of the best parts is after the work is done, you get to see the results of your work in our stores, online and throughout our business. You get to make a difference.

First, let’s talk Tech. The Software teams leverage technology to maximize the satisfaction and delight of our athletes while providing them the value they need in an efficient and high-impact manner. Here are the technology platforms we work on and the latest technologies we use to build high-quality apps for our customers. Don’t worry, you don’t have to be a master at them all. Ideally, you’ll have experience in more than a few of them. • Python, Java + Spring Boot, Kubernetes (Required), SQL, CI/CD, Azure, GCP.

As a Senior Software Engineer you will: • Hands on experience building and deploying applications on cloud platforms like AWS, Azure, or GCP. Azure and/or GCP is preferred. • A strong understanding and experience with Kubernetes and microservice architectures. Experience with ML frameworks like MLflow and/or Kubeflow is a huge plus. • 5+ years of experience developing in Python or Java (Spring framework is a plus) • 3+ years of experience creating APIs and web services using Representational State Transfer (REST) software architectural style • A proficiency in CI/CD practices and tooling including Version control systems (e.g. Git), release automation (e.g. GitHub Actions, Ansible), and Infrastructure-As-Code (e.g. Terraform) • An interest in learning about applied data science and machine learning methodologies • Proficiency in SQL language and relational databases (MSSQL, Oracle, DB2, etc.) • An understanding of the full software development lifecycle • Experience in building solutions for monitoring, logging, security, and scalability of applications • Ability to work independently, own, and complete work in a timely manner • Experience with automated testing (Junit, Cucumber, pytest etc…) • verbal and written communication skills. • Ability and willingness to work in a fast-paced and highly collaborative environment. • Experience working with one of the following industries: Retail, Supply Chain, Logistics, Manufacturing, or Marketing is a plus • An understanding of streaming platforms, e.g. Kafka, RabbitMQ. Azure Event Hubs, Google Pub/Sub, AWS Kinesis, and application of streaming analytics is a plus • Experience with “Big Data” solutions such as Hadoop, Spark, MapReduce, etc. is a plus • Experience implementing systems that leverage hardware acceleration (i.e. GPUs/TPUs) is a plus We believe that there is always a better way! So, we will expect you to: • Continuously learn modern software design and development core practices, utilizing articles, MeetUps, conferences, tech talks, etc. • Review and discuss code with engineering peers and leaders to understand best practices and optimal design patterns • Take the initiative to drive new ideas and projects • Increase your business acumen by consistently learning about other parts of our business • Support and mentor other members of the Software Engineering team.

Lastly, here’s some stuff that won’t be part of your day-to-day. You won’t: • Work in a silo • Be limited by project plans • Find yourself stuck in a boring cube • Pay to park or be stuck in a corporate high-rise • Be pigeonholed into proprietary and stagnant codebases.