Job#: 3042465
Job Description:
Hybrid On-Site Dearborn MI
12+ Month Contract
$50-65/HR
Position Summary
Employees in this role are responsible for designing, developing, testing, and maintaining software applications and products to meet customer needs. The position participates in the full software development lifecycle, including software architecture design, development, testing, deployment, and ongoing support.
This role may involve full-stack software engineering responsibilities, including development of both user-facing applications and server-side components.
Key Responsibilities
- Engage with customers to understand use cases, pain points, and requirements while advocating for user-centric software solutions.
- Design, develop, and deliver solutions using various programming languages, frameworks, methodologies (including Agile), and technologies.
- Assess software requirements and determine appropriate technology stacks, integration methods, and deployment strategies.
- Develop high-level software architecture designs, defining structure, components, and interfaces.
- Collaborate with cross-functional teams, including Product Owners, Designers, Architects, and other stakeholders.
- Define and implement software testing strategies, guidelines, policies, and processes aligned with organizational objectives, industry regulations, and best practices.
- Continuously improve application performance, optimize solutions, and evaluate new technologies to maximize development efficiency.
- Apply modern software engineering practices including:
- Test-Driven Development (TDD)
- Continuous Integration (CI)
- Continuous Delivery (CD)
- Support security best practices, including data encryption and anonymization.
- Create intuitive, interactive, and user-friendly interfaces.
- Develop and maintain backend applications, APIs, and microservices using server-side technologies.
- Evaluate and incorporate emerging technologies and participate in development across evolving technology stacks, often through industry collaboration.
Required Skills
- MATLAB Modeling
- Embedded Software Development
- Software Testing
- Unit Testing
- Integration Testing
Preferred Skills
Required Experience
Engineer 3
- Practical experience in two programming languages or advanced expertise in one programming language
- 6+ years of IT experience
- 4+ years of software development experience
Preferred Experience
Hands-on experience with:
- Embedded C development
- MATLAB development
- Software testing
- Hardware testing
- Low-level code debugging
Additional experience preferred in:
- Embedded C
- MATLAB
- Integration Testing
- Low-layer code debugging
- LIN
- CAN
- Diagnostics
- NVM
- HIL Testing
- Requirements Management
- Algorithm Design from requirements
Education Requirements
Required
- Bachelor's Degree or Master's Degree
EEO Employer
Apex Systems is an equal opportunity employer. We do not discriminate or allow discrimination on the basis of race, color, religion, creed, sex (including pregnancy, childbirth, breastfeeding, or related medical conditions), age, sexual orientation, gender identity, national origin, ancestry, citizenship, genetic information, registered domestic partner status, marital status, disability, status as a crime victim, protected veteran status, political affiliation, union membership, or any other characteristic protected by law. Apex will consider qualified applicants with criminal histories in a manner consistent with the requirements of applicable law.