Share this Job

Senior Software Engineer

Date: Jul 8, 2021

Location: CHICAGO, IL, US, 60603-4013

Company: Grainger Businesses

Grainger is North America’s leading Maintenance Repair & Operating provider and we are the 10th largest North American E-commerce player with over 50% of our revenue coming from online transactions. Within the Enterprise Systems team we use technology to support the ever-changing and dynamic needs of a supply chain carrying 1.5 million products and an employee base of 25,000+; and we are committed to delivering technical solutions to support the business in its mission to stay atop. We deliver technology solutions across the enterprise including our call centers, branch network, sales, and our various digital channels. The team supports over 1000 applications across the network and operates in an agile environment to deliver complex solutions quickly and seamlessly. The team of 500+ is comprised of Infrastructure + Operations, Cyber Security, Technology Planning, Architecture and Engineering and are built in a way to support the dynamic and ever-changing customer landscape.


Key Technologies / Framework: Java, J2EE, Ruby on Rails, RDBS, NoSQL, Lucene, SOLR

AWS, GCP, CICD tools (Git, CircleCI), Kubernetes


*This role typically is located in our downtown Chicago office, but due to COVID-19 will be fully virtual until further notice.  Once this office location has a return to work plan, the team member will be required to be on-site.



Software Engineer III

General Description:

We need engineers. Engineers who have a different mindset where you love to experiment and leverage your curiosity to meet and exceed customer expectations. Engineers who love the quality of their code. Engineers who love to solve difficult problems. Software Engineers design, build, test, deploy, and support products, platforms and solutions. They work collaboratively with Architects and Analysts to develop the physical design and build solutions that meet the defined functional, quality, performance, security and architectural standards. They work with Technical Support Specialists to advise on and address escalated level 2 and 3 support issues. They guide and advise Technical Administrators on maintenance, configuration changes, continuous improvements, and deployment. They work with Product Managers by providing input into planning and execution of product roadmaps and backlog priorities and they consult with Analysts to understand business requirements and to obtain input/insights through reports and research on key problems.

Software Engineers are primarily responsible for creating and implementing the physical design which includes building, testing, and deploying code; configuring systems; resolving defects; confirming compliance with security, performance and related standards; providing level 2 and 3 technical support; and delivering recommendations to improve systems.

Software Engineers use the latest methods, tools, and principles (e.g., Lean, Kanban, and Agile) to continuously deliver a value stream to the customers and businesses they serve. They understand how to leverage modern architectural components to design modular, flexible solutions.  Software Engineers highly value reuse of existing assets and, where appropriate, commercially available components and products, to avoid reinventing the “wheel.” Software Engineers design and build for safety, resilience, and reliability. 


Essential Job Functions:

  • You’ll be a part of a team that functions as the nexus of many important systems at Grainger. Being able to have a high-level understanding of these systems is a must.
  • Our current stack utilizes Webmethods by Software AG but we will be transitioning to cloud technologies based on JVM technologies. It will be important to be able to understand and be able to choose the correct tools for your application in a cloud-based environment.
  • As you are developing, unit and integration testing should be at the forefront of your mind. Everything moving to production should have a unit and integration test along with it. 
  • We also utilize Docker, Kubernetes, OpenShift, Kafka among others.



  • 6 - 10  years’ experience as a software engineer
  • Experience working with Java or other JVM technologies
  • Experience working in an Agile environment
  • Familiarity with continuous integration and continuous delivery
  • Familiarity with Test-driven design
  • Experience with cloud technologies such as AWS or GCP
  • The ability to analyze complex technical information
  • The ability to learn and utilize new technologies is a must


“Grainger is an Equal Opportunity / Affirmative Action employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, national origin, gender identity, sexual orientation, disability, or protected veteran status.”