
Job description
SUMMARY
The Principle Software Engineer - Architect is responsible for design, development, testing and support of new and existing software components for Envipco’s Reverse Vending Machines. The Principle Software Engineer - Architect is responsible for identifying, documenting and implementing new functionality. The successful candidate will work with the Validation team to create and execute comprehensive test plans. The Principle Software Engineer - Architect will also be responsible for research and documentation of new and existing defect resolutions.
Key Responsibilities
Collaboration: Work with cross-functional teams (Support, Validation, Product Management) to align architectural goals with product requirements.
System Architecture:
Define high-level software architecture, and design modular, scalable components; tailored for global interworking systems.
Design and document software architecture for Linux based products and servers, defining component interactions and interfaces.
Define and document interfaces between system-level components, including kernel modules, drivers, and middleware.
Technical Leadership: Lead design reviews, mentor team members, and promote coding standards.
Hardware/Software Integration: Collaborate with hardware teams to incorporate new processing systems and debug complex system interactions.
Performance Optimization: Analyze and optimize processing systems for utilization, power consumption, and real-time responsiveness.
Linux Mastery: Deep understanding of Linux internals, including system programming, OS kernel, and middleware.
Requirements: Translate functional requirements into technical specifications and design documentation.
Tools: Experience with tools such as UML for modeling, Git for version control, Jira for work process control, and Jenkins based CI/CD pipelines.
Job requirements
Education and Experience
Bachelor’s or Master’s degree in Computer Engineering, or Computer Science.
15–20 years of experience in Linux software development
2-3 years experience in a technical leadership or design role.
Technical Skills
Programming Languages:
Expert-level proficiency in C and C++.
Proficient in Python.
Proficient with MySQL
Bonus Skills
Experience integrating vision systems into embedded systems.
Experience integrating TinyML/ML into embedded systems.
Experience developing Android / iOS mobile applications or services.
Envipco is committed to fostering a diverse and inclusive workplace. We encourage individuals from all backgrounds to apply.
If you are ready to take on a challenging and rewarding role at the forefront of environmental innovation, apply now to be a key player in our dynamic team.
or
All done!
Your application has been successfully submitted!
You've already applied for this job
We appreciate your interest in this position. Unfortunately, you have already applied for this job.
