Principal Software Engineer - Architect
TLDR
Architect Linux-based software for embedded systems, integrating hardware, vision/ML, and scalable components for reverse vending machines.
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.
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.
What we offer:
30 days of annual leave
Subsidized company pension plan
A high degree of freedom
Flexible working hours
Employee discounts for various online shops via Corporate Benefits
Company (e-)bike leasing
Subsidy for gym memberships
Health management programs
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.
Benefits
Flexible Work Hours
Flexible working hours
Health Insurance
Health management programs
Bike leasing program
Company (e-)bike leasing
Paid Time Off
30 days of annual leave
Wellness Stipend
Subsidy for gym memberships
Envipco develops innovative reverse vending machines (RVMs) that empower consumers to recycle beverage containers conveniently while earning deposit refunds. Our technology targets environmentally conscious consumers and businesses looking to enhance their sustainability practices. With decades of expertise in the industry, we stand out by delivering reliable solutions that drive recycling and promote a circular economy.