Software Engineer II
Role details
Job location
Tech stack
Job description
This role offers the opportunity to join a growing engineering team as a Software Development Engineer at junior, mid-level, or senior experience tiers. You will design, develop, and maintain software applications and embedded systems that support critical business and product needs. Working closely with cross-functional teams, you will contribute to the full software development lifecycle, from requirements and design through implementation, testing, and ongoing support, while applying modern C++ practices, object-oriented design, and engineering best practices.
Responsibilities
- Design and develop software applications and systems that meet defined business and technical requirements.
- Write clean, efficient, and well-documented code in languages such as C, C++, and Python for applications and embedded systems.
- Develop, execute, and refine unit tests and integration tests to ensure software quality and reliability.
- Identify, analyze, and resolve software defects, performance issues, and technical problems in a timely manner.
- Collaborate with project managers, designers, QA engineers, and other stakeholders to ensure solutions align with business needs and user expectations.
- Maintain and enhance existing software applications and systems, implementing updates and improvements as required.
- Use software development tools, version control systems, and debugging tools to manage codebases and troubleshoot issues.
- Apply object-oriented programming principles, design theory, methodology, and SOLID principles to create robust and maintainable architectures.
- Participate in SAFe Agile ceremonies, including PI Planning, Sprint Planning, Daily Standups, Reviews, and Retrospectives, to support iterative development and continuous improvement.
- Work collaboratively across software, systems, validation, UX, and product teams to deliver customer-focused features through iterative development cycles.
- Leverage tools such as Jira, Confluence, Polarion, and Git for work tracking, collaboration, and configuration management.
- Communicate technical concepts clearly and effectively in both verbal discussions and written documentation.
- Contribute as a proactive team player, working independently when needed while coordinating closely with team members and leadership., This position is fully onsite at one of two locations: Tempe, Arizona or Oak Brook, Illinois. You will work in a collaborative engineering environment that emphasizes Agile (SAFe) methodologies, including regular PI Planning, Sprint Planning, Daily Standups, Reviews, and Retrospectives. The team leverages modern development tools and technologies such as C++ (14/17), QT/QML, Linux, Git, Jira, Confluence, and Polarion to build and support applications and embedded systems. You will partner closely with software, systems, validation, UX, and product teams in a professional setting that values clear communication, cross-functional collaboration, and iterative delivery of customer-focused features. Standard office hours apply, with work performed in a typical technical office environment., DevOps, Kotlin Talend SwiftUI Power BI Dataflow Debugging Scripting Apple IOS Operations Leadership Automation Mentorship Enthusiasm Resilience Creativity Kubernetes Databricks Code Review Unit Testing Data Analysis Build Process Microservices Test Planning Cloud Foundry Accountability Cloud Services Data Pipelines Version Control Test Automation Microsoft Azure Reporting Tools Software Design Building Design Apache Cassandra Computer Science Data Integration Software Systems Data Warehousing Containerization Agile Methodology Software Features Project Schedules Unstructured Data Cloud Technologies Performance Tuning Workflow Management Amazon Web Services Software Engineering Programming Languages Design Specifications Relationship Building Information Technology Full Stack Development IT Capacity Management Enterprise Integration Azure Synapse Analytics Change Data Capture (CDC) SQL (Programming Language) Business Objects Framework Android (Operating System) Java (Programming Language) Node.js (Javascript Library) Platform As A Service (PaaS) Scrum (Software Development) Swift (Programming Language) React.js (Javascript Library) Python (Programming Language) Test-Driven Development (TDD) Mobile Application Development ADO.NET (Programming Language) Cross-Functional Team Leadership JavaScript (Programming Language) Infrastructure As A Service (IaaS) Objective-C (Programming Language) Application Programming Interface (API) Tableau (Business Intelligence Software) +0
Google IT Automation with Python Principal Software Engineer II Walgreens
Deerfield, IL*On-Site
Unix Linux Kotlin Writing Patents SwiftUI Debugging Apple IOS Operations Leadership Management Automation Mentorship Innovation Resilience Algorithms Kubernetes E-Commerce Testflight Code Review Reliability AI Adoption Apache Maven Build Process Microservices Technical Debt Version Control Microsoft Azure Software Design Building Design Computer Science Software Systems Futures Exchange Agile Methodology Docker (Software) Programming Tools Selling Techniques Scalability Design Amazon Web Services Software Engineering Systems Architecture Programming Languages Design Specifications Relationship Building Technology Ecosystems Intellectual Property Information Technology Cloud-Native Computing New Product Development Artificial Intelligence C++ (Programming Language) Android (Operating System) Java (Programming Language) Node.js (Javascript Library) Scrum (Software Development) Swift (Programming Language) Service-Oriented Architecture Test-Driven Development (TDD) Mobile Application Development ADO.NET (Programming Language) Software Development Life Cycle Cross-Functional Team Leadership Troubleshooting (Problem Solving) Objective-C (Programming Language) +0
Requirements
Linux C++14 Planning Debugging Visionary Leadership Innovation SAFe Agile Coordinating Unit Testing Communication Collaboration Qt (Software) Design Theory Version Control Problem Solving Sprint Planning Customer Service Computer Science Safety Assurance Software Systems Embedded Systems Solid Principles Domain Knowledge Agile Methodology Programming Tools Embedded Software Project Management Software Engineering Software Development Computer Engineering User Experience (UX) Atlassian Confluence Programming Languages Software Architecture Sprint Retrospectives Electrical Engineering Object-Oriented Design Artificial Intelligence Application Development Polarion ALM (Software) C (Programming Language) Engineering Design Process C++ (Programming Language) Software Quality (SQA/SQC) Qt Modeling Language (QML) Git (Version Control System) Python (Programming Language) Cross-Functional Collaboration Software Development Life Cycle Troubleshooting (Problem Solving) Object-Oriented Programming (OOP), * Bachelor's degree or Master's degree in Computer Science, Computer Engineering, Software Engineering, Electrical Engineering, or a related technical field.
- For Software Engineer I: 1+ years of experience, or an equivalent combination of education and experience (including a relevant Master's degree).
- For Software Engineer II: 3+ years of experience, or an equivalent combination of education and experience (including a relevant Master's degree).
- For experienced Software Engineer: 5+ years of experience developing software for embedded systems, or an equivalent combination of education and experience.
- Developed expertise in technical skills, proficiencies, and knowledge in the relevant field of support.
- Well-developed problem analysis and problem-solving techniques, with the ability to diagnose and resolve complex issues.
- Proficiency in one or more programming languages such as C, C++, Python, or similar.
- Understanding of the software development lifecycle processes and engineering best practices.
- Ability to effectively communicate technical concepts both verbally and in writing.
- Demonstrated ability to work independently while contributing effectively within a team environment.
- Knowledge of object-oriented programming concepts and their practical application.
- Must have hands-on experience with modern C++ (C++14 or C++17), including threading.
Additional Skills & Qualifications
- Experience with QT/QML for user interface development is preferred.
- Ability to apply design theory, methodology, and SOLID principles to software architecture and implementation.
- Proficiency with the Linux operating system for development and deployment activities is preferred.
- Experience using Git for version control and Jira for issue and task tracking is preferred.
- Prior experience with embedded software development is highly valuable.
- Specific skills, proficiencies, and domain knowledge related to the position, as defined by the department, are beneficial.
- Prior experience in agricultural guidance application development is preferred.
- Experience working in a SAFe Agile development environment, including participation in PI Planning, Sprint Planning, Daily Standups, Reviews, and Retrospectives.
- Proven ability to collaborate across software, systems, validation, UX, and product teams to deliver customer-focused features.
- Experience using collaboration and lifecycle tools such as Jira, Confluence, and Polarion.
- Strong analytical, problem-solving, and troubleshooting skills, with attention to detail.
- Self-motivated team player with the ability to work with minimal supervision.
- Ability to communicate effectively with team members and leadership staff., Linux Firmware Budgeting Debugging Visionary Leadership Innovation Zephyr RTOS State Machines Authentications Problem Solving Embedded Systems Microcontrollers Framework Design Peripheral Devices Abstraction Layers Exception Handling Firmware Development Artificial Intelligence Static Program Analysis Near Field Communication Engineering Design Process C++ (Programming Language) Serial Peripheral Interface Real-Time Operating Systems Extract Transform Load (ETL) General-Purpose Input/Output Radio-Frequency Identification Universal Asynchronous Receiver/Transmitter +0
Benefits & conditions
This is a Contract position based out of Carol Stream, IL. Pay and Benefits
The pay range for this position is $42.00 - $58.00/hr.
Eligibility requirements apply to some benefits and may depend on your job classification and length of employment. Benefits are subject to change and may be subject to specific elections, plan, or program terms. If eligible, the benefits available for this temporary role may include the following: * Medical, dental & vision * Critical Illness, Accident, and Hospital * 401(k) Retirement Plan - Pre-tax and Roth post-tax contributions available * Life Insurance (Voluntary Life & AD&D for the employee and dependents) * Short and long-term disability * Health Spending Account (HSA) * Transportation benefits * Employee Assistance Program * Time Off/Leave (PTO, Vacation or Sick Leave) Workplace Type