Software Performance Engineer – Photonic Product Assurance Team
City : Ottawa, Ontario, Canada
Category : Engineering
Industry : Telecommunications
Employer : Ciena
Ciena is committed to our people-first philosophy. Our teams enjoy a culture focused on prioritizing a personalized and flexible work environment that empowers an individual’s passions, growth, wellbeing and belonging. We’re a technology company that leads with our humanity—driving our business priorities alongside meaningful social, community, and societal impact.
Not ready to apply? Join our Talent Community to get relevant job alerts straight to your inbox.
We are currently looking for a skilled and dedicated Software Performance Engineer to join our team in the Optical Networks organization. As a member of the Photonic Product Assurance Team, your primary responsibility will be to ensure the quality and performance of the software developed for our Reconfigurable Line System (RLS) product.
RLS is a high-capacity networking platform with advanced software capabilities. It features an intelligent control plane for fast service activation and improved availability, ensuring rapid adaptation to problems, outages, and other issues that could impact network performance. The open APIs and micro-services architecture enable seamless integration and customization, enhancing operational efficiency and service velocity. These APIs facilitate seamless integration with existing management and back-office systems, allowing operators to leverage their current infrastructure investments. The openness of the platform also enables collaboration with third-party systems and applications, providing flexibility and choice for network operators.
As a leader within the team, one of your primary responsibilities will be to provide guidance and direction to a team of designers, ensuring they conduct effective performance investigations that align with current priorities. You will play a critical role in ensuring that designers have a thorough understanding of the use cases and performance targets, empowering them to effectively address any performance issues that may arise. Leveraging your deep understanding of customer use cases and requirements, you will play a pivotal role in shaping software design that consistently meets and surpasses high-performance standards.
In this role, you will be responsible for analyzing and optimizing software performance, with a specific focus on critical RLS use cases such as control plane traffic restoration following an outage, declarative config, streaming telemetry, zero-touch provisioning, span calibration, software upgrades and circuit pack restarts. You will collaborate with design teams to ensure efficient feature design, provide documentation and training on performance guidelines and best practices, automate performance analysis, and contribute to improving the software delivery pipeline to proactively detect performance issues before they impact the production environment.
Responsibilities:
The successful candidate will join the Photonic Product Assurance Team. Specific responsibilities include:
- Provide technical leadership and guidance to a team of designers, ensuring their effective participation in performance investigations.
- Foster a collaborative and innovative team environment, empowering designers to address performance issues and drive continuous improvements.
- Analyze and optimize the software performance of the RLS product, highlighting areas for improvement and proposing effective solutions.
- Work closely with the design teams to review and consult on feature design, ensuring efficiency and performance are prioritized.
- Develop comprehensive documentation on performance guidelines and best practices.
- Conduct training sessions to educate designers on performance considerations and best practices.
- Automate performance analysis processes to ensure consistent and efficient evaluations.
- Contribute to improving the software delivery pipeline to proactively detect and address performance issues before they impact the production environment.
- Collaborate with cross-functional teams to understand performance requirements and develop solutions accordingly.
- Stay updated with the latest software engineering trends, techniques, and technologies.
- Participating in code reviews and providing recommendations for performance improvements.
- Collaborating with customers and stakeholders to understand their performance requirements and address any performance-related concerns.
Qualifications:
- Bachelor's degree in Software Engineering, Computer Science/Engineering or a related field. Advanced degree is a plus.
- Proven experience as a Software Engineer, with a focus on performance analysis and optimization.
- Knowledge of performance profiling and optimization techniques for distributed systems.
- Experience with performance testing methodologies and tools, such as load testing and stress testing.
- Familiarity with the RLS product or similar networking devices.
- Proficient in C/C++, Python, or other programming languages.
- Good understanding of Linux operating system and computer architectures.
- Experience with performance analysis tools such as Linux perf, flame graphs, or other.
- Excellent problem-solving skills and attention to detail.
- Strong communication skills, both written and verbal.
- Ability to work effectively in a team environment.
- Experience in creating technical documentation and conducting training sessions.
- Familiarity with machine learning and data analytics techniques for performance analysis.
At Ciena, we are committed to building and fostering an environment in which our employees feel respected, valued, and heard. Ciena values the diversity of its workforce and respects its employees as individuals. We do not tolerate any form of discrimination.