At a Glance
- Tasks: Join our team to develop and test integrations for our Device Agent using modern C++.
- Company: Cisco ThousandEyes delivers top-notch digital experience assurance across networks worldwide.
- Benefits: Enjoy a hybrid work model, flexible hours, and opportunities for professional growth.
- Why this job: Be part of an innovative team transforming digital experiences with cutting-edge technology.
- Qualifications: Proficiency in modern C++, embedded Linux experience, and familiarity with Python are essential.
- Other info: Diverse backgrounds are encouraged; apply even if you don't meet every qualification!
The predicted salary is between 43200 - 72000 ÂŁ per year.
Senior Software Engineer (C++), Device Agents
Please note that we have a hybrid approach to work and are looking for someone who can come into the London office at least one day a week.
Who We Are
Cisco ThousandEyes is a Digital Experience Assurance platform that empowers organizations to deliver flawless digital experiences across every network – even the ones they don’t own. Powered by AI and an unmatched set of cloud, internet and enterprise network telemetry data, ThousandEyes enables IT teams to proactively detect, diagnose, and remediate issues – before they impact end- user experiences.
ThousandEyes is deeply integrated across the entire Cisco technology portfolio and beyond, helping customers deploy at scale while also delivering AI-powered assurance insights within Cisco’s leading Networking, Security, Collaboration, and Observability portfolios.
This role is part of the Device Agent team. The Device Agent is a lightweight application which measures internet performance from inside last-mile network devices on behalf of our customers, providing critical insights into last-mile network performance and allowing swift diagnosis of issues. We develop, integrate, test and deploy the Devices Agent across a wide range of third-party devices (over 70 million agents deployed so far).
What You\’ll Do
We are seeking a skilled and motivated C++ Software Engineer to join our dynamic team. This role involves working on integration and test automation projects and having the opportunity to work with a variety of technologies and platforms.
We’re in the midst of an exciting transformation in how we deliver our Agent and investing heavily in our own tooling in order to amplify our impact and deliver agents for more devices, more quickly. As we expand our footprint you will be working with device manufacturers, router middleware platforms and ISPs to enable the roll-out of the Agent
This role is a mix of:
- Developing, testing and delivering new integrations for the agent, supporting either specific OEM devices, specific chipsets or entire software platforms (such as RDK-B, prpl or pfSense). This includes working closely with our partners’ engineering teams.
- Extending our test automation framework to take more of the QA burden away from manual testing and enabling shorter update cycles for our partners.
- Delivering third-line support for the agent when issues have been reported from the field.
- Continuously improving our processes to allow us to deliver new integrations and updates on a consistent and predictable schedule.
Qualifications
- Modern C++ proficiency . You will have to work on a large system developed in modern C++ (C++14 or newer) that makes extensive use of the standard library and uses a large number of third party libraries.
- Embedded Linux Experience. Our agent targets Embedded Linux platforms of many varieties and you will need to be the expert who can troubleshoot issues and develop solutions to enable the agent to run on our customer’s devices.
- Familiarity with Python. Our test automation approach is built around Python and you will have to be comfortable extending and improving it over time.
Preferred Qualifications
- Network programming . Our agent deals with low-level network measurements (as well as high-level “quality of experience” metrics) and being able to understand how they are relevant for your devices will be key.
- QA Testing Automation Experience . Our ability to move quickly is dependent on being able to quickly validate agent integrations for delivery. Expertise in designing effective QA testing processes will help you succeed in this role.
- Computer Science knowledge . You need to have a strong understanding of computer science fundamentals and a willingness to learn new technologies and libraries as our customer base expands.
Cisco values the perspectives and skills that emerge from employees with diverse backgrounds. That\’s why Cisco is expanding the boundaries of discovering top talent by not only focusing on candidates with educational degrees and experience but also placing more emphasis on unlocking potential. We believe that everyone has something to offer and that diverse teams are better equipped to solve problems, innovate, and create a positive impact.
We encourage you to apply even if you do not believe you meet every single qualification . Not all strong candidates will meet every single qualification. Research shows that people from underrepresented groups are more prone to experiencing imposter syndrome and doubting the strength of their candidacy. We urge you not to prematurely exclude yourself and to apply if you\’re interested in this work.
Apply for this job
*
indicates a required field
First Name *
Last Name *
Email *
Phone *
Location (City) *
Resume/CV *
Enter manually
Accepted file types: pdf, doc, docx, txt, rtf
Enter manually
Accepted file types: pdf, doc, docx, txt, rtf
Education
School Select…
Degree Select…
Select…
LinkedIn Profile
Website
Are you now legally authorized to work in the posted primary location for this requisition? * Select…
Will you require sponsorship in the future for this location (for example, if you are on a temporary visa)? * Select…
#J-18808-Ljbffr
Senior Embedded Software Engineer (C++), Device Agents employer: ThousandEyes (part of Cisco)
Contact Detail:
ThousandEyes (part of Cisco) Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Senior Embedded Software Engineer (C++), Device Agents
✨Tip Number 1
Familiarise yourself with the latest C++ standards, especially C++14 and newer. Brush up on your knowledge of the standard library and third-party libraries commonly used in embedded systems, as this will be crucial for your role.
✨Tip Number 2
Gain hands-on experience with Embedded Linux platforms. Understanding how to troubleshoot and develop solutions for these systems will set you apart from other candidates and show your readiness for the challenges of the role.
✨Tip Number 3
Network programming is key for this position. Brush up on your skills in low-level network measurements and high-level quality of experience metrics, as this knowledge will be essential when working with device manufacturers and ISPs.
✨Tip Number 4
Showcase your experience with QA testing automation, particularly in Python. Being able to demonstrate your ability to design effective QA processes will highlight your capability to contribute to the team’s efficiency and success.
We think you need these skills to ace Senior Embedded Software Engineer (C++), Device Agents
Some tips for your application 🫡
Tailor Your CV: Make sure your CV highlights your experience with modern C++ and embedded Linux. Include specific projects or roles where you've developed, tested, or delivered software solutions, especially those related to network programming or QA testing automation.
Craft a Compelling Cover Letter: In your cover letter, express your enthusiasm for the role and the company. Mention how your skills align with the responsibilities of the position, particularly your experience with integration and test automation projects. Don't forget to showcase your ability to work collaboratively with engineering teams.
Showcase Relevant Projects: If you have worked on any relevant projects, especially those involving device agents or network performance, be sure to include them in your application. Describe your role, the technologies used, and the impact of your contributions.
Highlight Continuous Learning: Cisco values candidates who are willing to learn and adapt. In your application, mention any recent courses, certifications, or self-study efforts that demonstrate your commitment to staying updated with new technologies and libraries relevant to the role.
How to prepare for a job interview at ThousandEyes (part of Cisco)
✨Showcase Your C++ Skills
Be prepared to discuss your experience with modern C++ (C++14 or newer). Highlight specific projects where you've used the standard library and third-party libraries, as this will demonstrate your proficiency and relevance to the role.
✨Demonstrate Embedded Linux Expertise
Since the role involves working with Embedded Linux platforms, be ready to talk about your troubleshooting experiences and solutions you've developed for similar systems. This will show that you can handle the technical challenges of the position.
✨Familiarity with Python is Key
As the test automation framework is built around Python, mention any relevant experience you have with it. Discuss how you've used Python in past projects to extend or improve automation processes, which will highlight your adaptability.
✨Understand Network Programming
Given that the agent deals with low-level network measurements, brush up on your knowledge of network programming. Be prepared to explain how you understand the relevance of these metrics for devices, as this will be crucial for the role.