Grainger

Senior Software Engineer

Grainger

full-time

Posted on:

Origin:  • 🇺🇸 United States • Illinois

Visit company website
AI Apply
Manual Apply

Salary

💰 $110,500 - $184,100 per year

Job Level

Senior

Tech Stack

CloudDistributed SystemsDockerJavaJavaScriptKafkaKotlinKubernetesNext.jsPostgresReactSpringSpring BootSpringBoot

About the role

  • The Pricing team creates the technology that supports Grainger’s pricing strategy. Providing the right product at the right price is core to Grainger’s growth objectives, both in terms of driving direct growth the pricing leverage, and in terms of supporting other growth drivers like marketing. The Pricing team is responsible for building and maintaining the applications and data that support deriving the right price for each product. Our vision : Pricing in the MRO (maintenance, repair, & operations) industry is extraordinarily complex, because of the many factors that must be considered. Setting a market relevant price requires clear understanding of product, customer, and competitor dynamics. Evolving the technology to support deriving the market relevant price requires constant iteration and collaboration with our business partners. We are a highly visible and important strategic team in our pricing strategy roadmap. You will report to the Manager, Product Engineering and will be based in Merchandise Mart office. Remote candidates will also be considered. You Will: Develop, test, and deploy high-quality web applications using React, Next.js for the front end, and Java or Kotlin for the back end. Build reusable and scalable components and libraries for future use. Understand trends and emerging technologies and evaluate the performance and applicability of potential tools for our requirements. Optimize applications for maximum speed, scalability, and reliability. Partner with stakeholders including data teams, design, product and executive teams and assisting them with software and data related technical issues. Write clean, maintainable, and efficient code following best practices and coding standards. Troubleshoot, debug, and optimize existing systems to improve performance. Integrate with RESTful APIs and third-party services. Work on and enhance the CI/CD pipelines. Pair program with developers daily to ensure better quality code, shared knowledge and increased resiliency of our applications.

Requirements

  • 7 years of experience with Modern Software Engineering projects and practices: designing, building, and deploying scalable software applications. 3 + years of experience in designing, building and deploying cloud native solutions. Experience with Docker, Kubernetes, or other containerization technologies. Excellent communication skills and ability to collaborate effectively with team members. Understanding of distributed system design and experience building production grade distributed systems. Hands-on experience with React.js and Next.js frameworks for front-end development. Solid experience with Java, Spring Boot, or similar frameworks for back-end development. Experience with messaging systems like Kafka. Experience with database technologies such PostgreSQL and/or Snowflake. Proven experience collaborating across teams to develop and implement software engineering best practices. Familiarity with version control systems (e.g., Git) and CI/CD pipelines. Familiarity working with data teams. Familiarity with Agile/Scrum methodologies and DevOps practices.