Principle Software Engineer - Architect

Envipco
Osnabrück, Germany
26 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Intermediate

Job location

Osnabrück, Germany

Tech stack

IOS Applications
JIRA
C++
Computer Engineering
Software Debugging
Linux
Middleware
Python
Linux kernel
MySQL
Performance Tuning
Software Architecture
Software Engineering
Systems Architecture
System Programming
Systems Integration
UML
Visual Systems
iOS
GIT
Information Technology
Network Server
Jenkins
Programming Languages

Job description

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., * 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

Do you have experience in iOS development?, Do you have a Master's degree?, * 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.

Apply for this position