Principal Software Engineer
Principal Software Engineer

Principal Software Engineer

Full-Time 80000 - 100000 £ / year (est.) No home office possible
Huber+Suhner

At a Glance

  • Tasks: Lead software architecture and design, collaborating on innovative projects with cutting-edge technology.
  • Company: Join HUBER+SUHNER Polatis, a leader in tech innovation with a collaborative culture.
  • Benefits: Enjoy a competitive salary, excellent benefits, and opportunities for professional growth.
  • Other info: Dynamic work environment with a focus on team development and career advancement.
  • Why this job: Make a real impact by driving complex software solutions and leading talented teams.
  • Qualifications: 10+ years in Linux platforms, advanced C programming, and strong leadership skills required.

The predicted salary is between 80000 - 100000 £ per year.

Architecture and Design
Work with Software Architect in defining system and software architecture across multiple projects, leveraging deep product knowledge, HW/SW design constraints, and Linux expertise. Maintain architecture and design documents for assigned projects.

Technical Expertise
Proficiency in embedded software development and customisation to meet specific hardware/software requirements. Experience in Linux system administration, including configuration, performance tuning, and troubleshooting.

Hardware Integration
Hands-on experience with hardware integration, including I2C, UART, SPI, and USB protocols. Familiarity with reading and understanding hardware schematics for effective software-hardware integration.

Cross-Functional Collaboration
Collaborate across multiple functions within engineering to define the scope of work packages for software teams. Contribute to planning and estimation of the work packages.

Technical Leadership
Lead the design and implementation of complex features that span multiple subsystems (kernel, middleware, hardware interfaces, networking, etc.) and multiple engineering disciplines. Set engineering standards for code quality, testing, documentation, and CI/CD practices in embedded environments. Drive root-cause analysis for difficult system-level issues (e.g., kernel panics, memory leaks, timing issues, hardware-software integration problems).

Team Development
Assist in building highly efficient teams by educating and training team members on products, features, and best practices for embedded software development.

Collaboration and Issue Resolution
Collaborate with production and NPI teams in addressing potential software issues during switch production and ensuring their resolution. Work with the customer support team and customers to address potential field issues in software and drive them to resolution.

Infrastructure and IT Architecture
Collaborate with the manager to define the IT architecture and lab infrastructure required for efficient project execution, emphasising Linux-based systems. Contribute to maintaining the lab, tools, and other team infrastructure.

Your profile
Bachelor’s in computer science, Software Engineering, or related field. At least 10+ years of experience in Linux platforms including administration, platform security, troubleshooting and performance optimisation. Advanced skills in Linux customisation (kernel or platform) to tailor software for specific hardware/software requirements. Advanced proficiency in C programming language in an embedded environment. Experience of developing highly efficient and maintainable software in an embedded environment. Expertise in running code reviews, coding standards and software development best practices. Proven technical leadership on translating architectural direction into actionable engineering plans, ensuring high-quality delivery. Capable of diagnosing kernel issues, integrating drivers, and working closely with hardware teams to resolve HW/SW integration challenges. Comfortable with tools for highly efficient teams – unit test framework, debugging tools. Skilled at root-cause analysis of difficult system-level issues. Solid understanding of networking concepts especially within data centre networks, and security mechanisms including data storage, and preventing vulnerabilities. Experience working in Agile software development to suggest and implement process improvements, optimising the team's workflow and productivity. Excellent communication skills to convey complex technical concepts clearly to both technical and non-technical stakeholders. Active listening skills to understand requirements, concerns, and feedback from team members and other stakeholders. Analytical thinking, sound judgement, problem-solving abilities, and ability to identify issues and make timely, well-informed decisions, especially in high-pressure situations. Exceptional leadership skills, with the ability to coach and develop skills and efficiencies of the team. Excellent collaboration skills, both within the team and across functions.

Why HUBER+SUHNER Polatis?
Our aim is to be the employer of choice and as such you can be assured of a market leading remuneration package that matches your skills and experience. Your employment and development is at the heart of our "Fundamentals". We have an entrepreneurial and collaborative culture within the business. You will hear back from us as soon as possible.

For further information please contact: HR Team hr.polatis@hubersuhner.com

Principal Software Engineer employer: Huber+Suhner

At HUBER+SUHNER Polatis, we pride ourselves on being an employer of choice, offering a competitive remuneration package and a strong focus on employee development. Our entrepreneurial and collaborative culture fosters innovation and teamwork, providing ample opportunities for professional growth in a dynamic environment. Join us to be part of a team that values your expertise and encourages you to excel in your career while working on cutting-edge technology in embedded software development.
Huber+Suhner

Contact Detail:

Huber+Suhner Recruiting Team

StudySmarter Expert Advice 🤫

We think this is how you could land Principal Software Engineer

✨Tip Number 1

Network like a pro! Reach out to your connections in the industry, attend meetups, and engage in online forums. You never know who might have the inside scoop on job openings or can refer you directly.

✨Tip Number 2

Show off your skills! Create a portfolio showcasing your projects, especially those involving Linux and embedded systems. This will give potential employers a taste of what you can do and set you apart from the crowd.

✨Tip Number 3

Prepare for interviews by brushing up on technical questions related to software architecture and hardware integration. Practice explaining complex concepts clearly, as communication is key in cross-functional collaboration.

✨Tip Number 4

Don’t forget to apply through our website! It’s the best way to ensure your application gets seen. Plus, we love seeing candidates who are proactive about their job search!

We think you need these skills to ace Principal Software Engineer

Embedded Software Development
Linux System Administration
Hardware Integration
I2C Protocol
UART Protocol
SPI Protocol
USB Protocol
Reading Hardware Schematics
Cross-Functional Collaboration
Technical Leadership
Root-Cause Analysis
C Programming Language
Agile Software Development
Networking Concepts
Communication Skills

Some tips for your application 🫡

Tailor Your CV: Make sure your CV reflects the skills and experiences that match the job description. Highlight your Linux expertise, embedded software development, and any relevant hardware integration experience. We want to see how you fit into our team!

Craft a Compelling Cover Letter: Your cover letter is your chance to shine! Use it to explain why you're passionate about this role and how your background aligns with our needs. Don’t forget to mention your technical leadership experience and collaboration skills!

Showcase Your Projects: If you've worked on projects that demonstrate your proficiency in embedded systems or Linux administration, make sure to include them. We love seeing real-world applications of your skills, so don’t hold back!

Apply Through Our Website: We encourage you to apply directly through our website for a smoother application process. It helps us keep track of your application and ensures you get the attention you deserve. We can’t wait to hear from you!

How to prepare for a job interview at Huber+Suhner

✨Know Your Architecture

Before the interview, brush up on your understanding of system and software architecture. Be ready to discuss how you've previously collaborated with architects and how you can leverage your deep product knowledge in embedded systems to contribute effectively.

✨Show Off Your Linux Skills

Make sure to highlight your proficiency in Linux system administration. Prepare examples of how you've tackled performance tuning and troubleshooting in past projects, as well as any customisations you've made to meet specific hardware/software requirements.

✨Demonstrate Cross-Functional Collaboration

Be prepared to share experiences where you've worked across multiple engineering functions. Discuss how you defined work packages and contributed to planning and estimation, showcasing your ability to collaborate effectively with diverse teams.

✨Lead with Confidence

As a Principal Software Engineer, you'll need to demonstrate technical leadership. Share instances where you've led design and implementation efforts, set engineering standards, or conducted root-cause analysis for complex issues. This will show your capability to drive high-quality delivery.

Principal Software Engineer
Huber+Suhner

Land your dream job quicker with Premium

You’re marked as a top applicant with our partner companies
Individual CV and cover letter feedback including tailoring to specific job roles
Be among the first applications for new jobs with our AI application
1:1 support and career advice from our career coaches
Go Premium

Money-back if you don't land a job in 6-months

>