Software Engineer (Security), New Grad
Ciena
Key Responsibilities
- Design, develop, and test features in C and C++ for embedded systems.
- Investigate, debug, and resolve complex software defects to enhance performance and reliability.
- Identify and mitigate security vulnerabilities.
- Engage in the complete software development lifecycle, from architecture to testing and delivery.
- Develop scripts, test utilities, and automation tools to optimize development processes.
- Collaborate with cross-functional teams to deliver seamless software releases.
Requirements & Tech Stack
- Bachelor’s degree (pursuing or recently completed) in Computer Science, Software Engineering, Electrical Engineering, or related field.
- 1+ years of programming experience in C/C++.
- Foundational knowledge of scripting languages like Python.
- Strong understanding of computer science fundamentals, including data structures, algorithms, and object-oriented design.
- Interest in software development and solving complex technical challenges.
- Knowledge of modern version control systems, particularly Git.
- Openness to learning and expanding knowledge and expertise, especially in the area of security.
Nice to Haves:
- Exposure to Linux kernel and embedded systems.
- Understanding of CPU hardware architectures and low-level software/firmware development.
- Familiarity with Agile development methodology.
- Experience with automated unit testing frameworks.
- Understanding of security concepts like SSL, TLS, SSH, authentication, and encryption algorithms.