Software Engineer
Cisco
About the Role
Develops software consistent with Cisco ‘Design Thinking Principles’ with a focus on simplification and UX (User Experience) at its core, using secure coding practices, ensuring user privacy, and following software development best practices. Partners with other teams including design and product management to create the right solution for customers. Creates technical design documentation and contributes to user documentation. Debugs and addresses software issues during development and in production systems. Brings new ideas for product innovation and helps improve software development processes.
Key Responsibilities
- Contributes to the solution of straightforward business problems regarding operations, products, services, or customers.
- Analyzes information, asks questions, and checks for understanding using standard procedures.
- Establishes relationships and collaborates effectively with own team.
- Collaborates with others on projects and works on small-to-medium features from technical design through completion.
- Applies understanding of the software development lifecycle and agile engineering practices (e.g., requirements analysis, design, coding, unit testing, acceptance testing).
- Participates in the delivery of technical design features with guidance.
- Writes functional, clean code and unit tests with guidance.
- Performs parts of the coding, debugging, testing, and troubleshooting throughout the development process under supervision.
- Assists in code reviews and addresses feedback.
- Executes tests for scale, reliability, and velocity within own code.
- Applies depth of knowledge in secure coding principles and reviews others' code for compliance.
- Monitors and triages incident reports and participates in postmortems and potential on-call duties.
- Expert in one component of the codebase.
- Shares knowledge from independent learning with the team.
- Estimates time to complete assignments and communicates status, blockers, and delays to the team.
- Identifies paths to eliminate blockers and meet deadlines.
- Collaborates with team members to share learnings or assist in problem-solving.
Requirements & Tech Stack
- Excellent knowledge of test automation with Python and other automation test tools and methodologies is a must.
- Expertise in Optical Technologies DWDM, ROADM and Line systems is essential.
- Knowledge and testing skill in Optical technologies is a must.
- Good understanding of customer deployments, operations, and the ability to translate brownfield/greenfield deployments into test strategy with high efficacy.
- Excellent problem-solving skills.
- Familiarity with Linux and modern software tools and techniques for development/debugging.
- Solid software design and development skills.
- Experience in test engineering concepts and methodologies including test planning, test case design, test execution, and test automation.
- Requires basic knowledge of theories, principles, and concepts within a technical discipline; exposure to current technologies through coursework or internship.
Qualifications
- Bachelors + 2 years of related experience OR Masters + 0 years of related experience.
- Industry certification such as CCNA/CCNP/CCIE/JCNA/JCIE will be a plus.
- Strong written, verbal communication, and interpersonal skills.
- Results-oriented with a high degree of accountability, dedication, and responsibility.
- Typically requires MS/BS in EE/CS combined with 1 - 4 years proven experience.


