At a Glance
- Tasks: Lead testing strategies and collaborate with teams to ensure top-notch software quality.
- Company: Join a pioneering tech firm at the forefront of optical networking.
- Benefits: Enjoy competitive pay, flexible work options, and opportunities for professional growth.
- Why this job: Make a real impact by enhancing cutting-edge software that powers industry-leading technology.
- Qualifications: 10+ years in software testing, strong Python skills, and experience with CI/CD pipelines.
- Other info: Dynamic team environment with a focus on continuous improvement and innovation.
The predicted salary is between 70000 - 90000 £ per year.
The product software team is responsible for providing customer-facing software that runs on our industry-leading all-optical network switch. The team manages two different software stacks running on different PCBs. The network software (NIC SW) implements various L2/L3 protocols and allows customers to communicate with the optical switch using the desired interfaces that include TL1, Netconf, Restconf, and WebUI. The control software (DSP SW) is a bare metal stack that receives user commands through NIC SW and controls the movement and position of piezoelectric actuators.
Responsibilities
- Test strategy and planning: Collaborate with the Principal Software Engineer, System Engineer, and Manager to develop comprehensive test strategies for projects, considering product knowledge and design constraints. Work closely with cross-functional teams to define project scopes and contribute to planning and estimation of testing efforts.
- Test execution and technical expertise: Demonstrate proficiency in test planning, execution, and reporting. Lead the development and review of software verification plans in collaboration with Test Engineers. Utilize hands-on experience to integrate software with hardware, understanding various hardware protocols (I2C, UART, SPI, USB) and effective use of scope and logic analysers. Analyse testing results, identify improvement opportunities, and drive the implementation of changes.
- Test Automation: Develop and implement automated testing frameworks and scripts to enhance testing efficiency. Collaborate with the development team to integrate automated testing into the continuous integration/continuous deployment (CI/CD) pipeline.
- Cross-Functional Collaboration: Work closely with cross-functional teams to address potential software issues during production and in the field, ensuring timely resolution. Collaborate with production, New Product Introduction (NPI), and customer support teams to enhance overall product quality.
- Leadership and Mentorship: Lead and support testing teams in overcoming technical challenges during the testing process. Conduct effective design and code reviews to enhance team efficiency. Mentor and train team members on testing methodologies, product features, and best practices for software testing.
- Process Orientation: Produce relevant project artifacts as required by the testing process. Provide specific documentation related to test plans, test cases, and test results to meet regulatory compliance and organizational requirements.
- Continuous Improvement: Proactively identify areas for process improvement within the testing process and contribute to the overall improvement of the software development lifecycle. Stay abreast of industry best practices and emerging technologies to continually enhance testing methodologies.
Your profile
- 10+ years of relevant experience in developing test cases for embedded software along with experience of developing hardware and software integration test cases.
- Ability to find hardware faults through software.
- 10+ years’ experience in developing test automation.
- Strong proficiency in Python programming language, including the ability to write clear, maintainable, and efficient code for test automation.
- Experience with popular Python test automation frameworks such as Nose and PyTest.
- Experience integrating automated tests into CI/CD pipelines using tools like Jenkins or GitLab CI.
- Use of Linux as a basic working environment and ability to write shell scripts.
- Solid understanding of testing methodologies, including unit testing, integration testing, and end-to-end testing.
- Strong debugging skills and the ability to troubleshoot issues in both the testing code and the application under test.
- Familiarity with Agile and Scrum methodologies, and experience working in an Agile development environment.
Desirable skills
- Knowledge of containerization tools like Docker and container orchestration tools like Kubernetes for creating scalable test environments.
- Understanding of basic security testing principles and the ability to integrate security testing into the test automation process.
- Use of Nessus or Qualys scanners.
- Familiarity with performance testing tools such as JMeter or Locust, and the ability to conduct performance testing using Python.
- Experience with cloud services such as AWS, Azure, or Google Cloud Platform, and the ability to leverage them for testing purposes.
- Relevant certifications in Python programming or software testing (e.g., ISTQB, Certified Agile Tester) would be a plus.
Principal Software Test Engineer in Cambridge employer: Huber+Suhner
Contact Detail:
Huber+Suhner Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Principal Software Test Engineer in Cambridge
✨Tip Number 1
Network with industry professionals! Attend meetups, webinars, or conferences related to software testing and engineering. It's a great way to make connections and learn about job openings that might not be advertised.
✨Tip Number 2
Show off your skills! Create a portfolio showcasing your test automation projects, especially those using Python and CI/CD pipelines. This will give potential employers a clear view of what you can bring to the table.
✨Tip Number 3
Prepare for interviews by brushing up on your technical knowledge. Be ready to discuss your experience with hardware integration and debugging, as well as your familiarity with Agile methodologies. Practice common interview questions to boost your confidence!
✨Tip Number 4
Don't forget to apply through our website! We have a range of exciting opportunities, and applying directly can sometimes give you an edge. Plus, it shows you're genuinely interested in joining our team!
We think you need these skills to ace Principal Software Test Engineer in Cambridge
Some tips for your application 🫡
Tailor Your Application: Make sure to customise your CV and cover letter for the Principal Software Test Engineer role. Highlight your experience with embedded software testing and automation, and don’t forget to mention your proficiency in Python and CI/CD tools!
Showcase Your Experience: We want to see your hands-on experience! Include specific examples of how you've developed test cases, integrated hardware and software, and tackled technical challenges. This will help us understand your problem-solving skills.
Be Clear and Concise: When writing your application, keep it clear and to the point. Use bullet points where possible to make it easy for us to read through your qualifications and achievements. We appreciate a well-structured application!
Apply Through Our Website: Don’t forget to apply through our website! It’s the best way for us to receive your application and ensures you’re considered for the role. Plus, it shows you’re keen on joining our team at StudySmarter!
How to prepare for a job interview at Huber+Suhner
✨Know Your Tech Inside Out
Make sure you’re well-versed in the technologies mentioned in the job description, especially Python and test automation frameworks like Nose and PyTest. Brush up on your understanding of hardware protocols and how they integrate with software, as this will be crucial for demonstrating your technical expertise.
✨Showcase Your Collaboration Skills
Since the role involves working closely with cross-functional teams, prepare examples of past experiences where you successfully collaborated with others. Highlight how you contributed to project scopes and planning, and be ready to discuss how you’ve resolved software issues in production.
✨Prepare for Problem-Solving Questions
Expect questions that assess your debugging skills and ability to troubleshoot both testing code and applications. Think of specific instances where you identified and fixed hardware faults through software, and be ready to explain your thought process during those challenges.
✨Emphasise Continuous Improvement
Demonstrate your commitment to continuous improvement by discussing any initiatives you've led or participated in that enhanced testing processes. Be prepared to share insights on industry best practices and emerging technologies that could benefit the team.