HomeJobsStockportFirmware/Software Engineer
Back to all jobs
⚡ Source: ReedRef: 56735707

Firmware/Software Engineer

Unipart·Stockport·Posted 1 months ago
🟣 Internship💰 40-40k GBP/year
Tailor my CV for this job — Free

Job description

Original text imported from Reed

Salary: Circa £40,000 
Hours: 37.5 
Contract: Full time 
Location: Stockport 

At Park Signalling we utilise our specialist engineering skills and knowledge to deliver products and services including consultancy and projects. We deliver design and development, application engineering, prototype manufacture, repair and consultancy at any stage in the life-cycle of a system or product. We design, manufacture and supply a range of products for the needs of the world-wide railway signalling, telecommunications and industrial control system industry. As a signalling consultancy, we are unique in the product knowledge that we hold. This know-how is current, relevant and easily transferable to all types of fail-safe control systems and products. 

We are now recruiting for a Firmware/Software Engineer to join our team in Stockport. Reporting to the Lead Software Engineer, your role will be to design and implement new and innovative solutions for signalling and train control systems and products in the field of Railway Engineering. There will also be involvement in problem resolution of new and legacy equipment. 

Key Responsibilities
  • Write firmware for embedded systems using the C language. 
  • Write unit-test software, and other software to support development and testing. 
  • Contribute ideas to the design of systems, software and firmware. 
  • Participate in “code reviews” of their own work and that of colleagues. 
  • Participate in testing, hands-on. 
  • Contribute to estimates of work-load. 
  • Help create a positive, enthusiastic, supportive working environment. 
  • Interact with other Engineers and Project Managers. 

The work to be performed is diverse and ability in the matters listed below is needed but we do not expect a single candidate to have all desirable skills or to be excellent in all matters: 
  • Broad grasp of the C language. 
  • Awareness of object-oriented programming techniques. 
  • Able to work with abstractions. 
  • Drawing and sketching diagrams. 
  • Testing techniques. 
  • Test-driven development. 
  • Enthusiasm for testing and documentation. 
  • Strong refactoring ability (breaking functions into smaller parts). 
  • The ability to learn and adapt. 
  • The ability to decompose a concept into bite-sized portions and explain them clearly. 

Educated to degree level (or equivalent) in an Engineering discipline (electrical/electronic or software engineering) with relevant experience in programming skills (preferably a safety critical industry), candidates must have previous experience of demonstrating their ability in a work environment, e.g. in a product design role. 

At Park Signalling Ltd we encourage collaborative working and experienced engineers are expected to be able to supervise, coach, mentor and encourage junior Engineers and Technicians. All members of the Engineering team are expected to be able to learn from one another. 

Closing date for applications: 30th April, 2026 

You may have experience in the following: Firmware Engineer, Software Engineer, Embedded Software Engineer, Embedded Systems Engineer, Electronics Engineer, Control Systems Engineer, C Programmer, C Developer, Embedded C Engineer, Test Engineer, Railway Signalling Engineer, Safety-Critical Software Engineer, Systems Engineer, Product Design Engineer, Engineering Consultant, etc. 

REF-227 701
SpeedCV AI

Key skills

AI-extracted from the job advert

Must-have skills
C programmingEmbedded systems developmentEngineering degreeProduct design experienceSafety critical systems experience
Nice-to-have
Object-oriented programmingTest-driven developmentUnit testingCode reviewsRailway signalling knowledgeRefactoring
Soft skills
CollaborationMentoringCommunicationAdaptabilityProblem solvingAttention to detail
SpeedCV AI

Application advice

5 AI-generated recommendations to maximise your chances.

1

⭐ Highlight your C programming expertise prominently as this is the primary language mentioned for embedded systems development

2

🔧 Emphasise any railway or safety critical systems experience as Park Signalling specialises in fail-safe railway control systems

3

📊 Quantify your embedded systems projects: 'Developed firmware for 8 embedded devices, reducing system response time by 25%'

4

🧪 Showcase your testing experience including unit testing and test-driven development methodologies

5

🤝 Mention any mentoring or collaborative work as they expect experienced engineers to supervise junior staff

NEW
AI SpeedCV

Suggested CV bullets

3 bullets our AI drafted for this specific advert, mirroring its ATS keywords.

How to tailor your CV

Add these 3 bullets under your most recent experience:

  • Developed embedded C firmware for 12 safety critical control systems, achieving 99.8% uptime across railway signalling applications
  • Led code reviews for 6-person engineering team, implementing test-driven development practices that reduced defect rates by 35%
  • Designed and tested embedded systems for industrial control applications, mentoring 3 junior engineers in C programming and refactoring techniques

Free to copy — tailoring requires a 30-sec CV upload.

NEW
AI cover letter

Your cover letter is ready

We've drafted a cover letter for Unipart. Preview the opening, then unlock the full personalised version.

Letter preview — tailored to Unipart

Dear Hiring Manager,

Park Signalling's specialisation in railway signalling and fail-safe control systems represents exactly the type of safety critical engineering challenge I want to tackle. With my embedded C programming experience and background in safety critical systems, I am well-positioned to contribute to your innovative signalling solutions.

My background in embedded systems development has equipped me with the technical skills and problem-solving approach needed to design and implement firmware for complex control systems, particularly in safety critical environments.

Get my personalised letter — free

Free signup, no card needed. Export to PDF/Word requires a £1.99 trial (14 days).

SpeedCV exclusive
SpeedCV AI

Interview questions

10 questions generated from this advert.

Technical

  • Explain how you would approach writing firmware for a safety critical railway signalling system
  • Describe your experience with C programming for embedded systems
  • How do you implement unit testing in embedded C development?
  • What techniques do you use for refactoring embedded code?
  • Explain the principles of test-driven development in firmware development

Behavioural

  • Tell me about a time you mentored a junior engineer
  • Describe a situation where you had to adapt to new technology quickly
  • Give an example of how you contributed to a positive team environment
  • Tell me about a complex problem you solved in embedded systems
  • Describe a time you had to explain a technical concept to non-technical stakeholders
SpeedCV AINEW

STAR answer examples

Model answers using the Situation-Task-Action-Result framework. Adapt to your own experience.

1Question

Tell me about a time you mentored a junior engineer

When a graduate engineer joined our embedded systems team, they struggled with C pointer concepts affecting their firmware development speed. I created a structured 4-week mentoring programme covering memory management, pointer arithmetic and embedded debugging techniques. I scheduled weekly 90-minute sessions reviewing their code and providing hands-on guidance with our development tools. By week 3, their code quality improved significantly and they successfully delivered their first independent firmware module 2 days ahead of schedule. The experience taught me the importance of structured knowledge transfer and patience in technical mentoring.
2Question

Describe a complex problem you solved in embedded systems

Our railway signalling controller was experiencing intermittent communication failures every 6-8 hours, causing system resets that disrupted train operations. I systematically analysed the embedded C code and discovered a memory leak in the interrupt handler that gradually consumed available RAM. The issue occurred when multiple signal requests arrived simultaneously, causing improper memory deallocation. I redesigned the interrupt handling mechanism using a circular buffer approach and implemented proper memory management checks. After deploying the fix, system uptime improved to 99.9% with zero communication failures over 3 months of testing.

Similar jobs

View all