This posting advertises potential job opportunities. The exact role may not be open today but could become available in the near future. If you apply, a Cisco representative may contact you directly if a relevant position opens.
Responsibilities
- Develop software consistent with Cisco's 'Design Thinking Principles', focusing on simplification using secure coding practices, ensuring user privacy, and following software development best practices.
- Build applications that make technology accessible on various devices.
- Imagine, design, and create solutions to transform how we work, live, learn, and play.
- Design, develop, troubleshoot, and debug software programs for enhancements and new products.
- Develop software and tools supporting design, infrastructure, and technology platforms, including operating systems, compilers, routers, networks, utilities, databases, and Internet-related tools.
- Contribute to the solution of straightforward business problems regarding operations, products, services, or customers.
- Analyze information, ask questions, and check for understanding using standard procedures within the job family.
- Establish relationships and collaborate effectively with your team.
- Collaborate with others on projects and work on small-to-medium features from technical design through completion.
- Apply understanding of the software development lifecycle and how various agile engineering practices can be used in your projects (e.g., requirements analysis, design, coding, unit testing, acceptance testing).
- Participate in the delivery of technical design features with guidance.
- Apply understanding of how related features in a product solve one or more customer needs.
- Write functional, clean code and unit tests with guidance.
- Perform parts of the coding, debugging, testing, and troubleshooting throughout the development process under supervision.
- Assist in code reviews and address code review feedback.
- Execute tests for scale, reliability, and velocity within your own code.
- Apply depth of knowledge in secure coding principles and review others' code for compliance.
- Monitor and triage incident reports, and participate in postmortems and potential on-call duties.
- Become an expert in one component of the codebase.
- Share knowledge from independent learning with the team.
- Estimate time to complete assignments and communicate status, blockers, and delays to the team.
- Identify paths to eliminate blockers and meet deadlines when needed.
- Collaborate with team members to share learnings or assist in problem-solving/resolution.
Requirements
- Solid understanding of computer science fundamentals and software engineering with an aptitude for learning new technologies.
- Fundamentals of TCP/IP networking, concepts of routing, and switching.
- Strong knowledge of programming and scripting languages like Python.
- Strong programming skills inclined towards optimization and performance (Networking Protocols role).
- Familiar with more than one development environment, well-versed with at least one.
- Strong testing inclination to ensure programs are comprehensive and well-tested for all use cases.
- Possess creative problem-solving skills and excellent troubleshooting/debugging skills.
- Experience in establishing and sustaining excellent relationships with the extended team.
- Solid fundamentals of object-oriented design and programming (Application Software role).
- Exposure to debugging application programs along with development and debugging tools (Application Software role).
- Strong knowledge of programming and scripting languages like Python (Embedded and Systems Development role).
- Exposure to kernel programming, user space, and system space (Embedded and Systems Development role).
- Very strong fundamentals of operating systems (Embedded and Systems Development role).
- Strong programming skills with emphasis on system programming (Embedded and Systems Development role).
- Fundamentals of system-level debugging techniques and exposure to tools used (Embedded and Systems Development role).
- Fundamentals of security technologies like Firewall, IPS/IDS, VPN, Inspections, IPsec, TLS, etc. (Networking Protocols role).
Nice to have
- Basics of routers, switches, network debugging tools, techniques, and hands-on experience (Networking Protocols role).
- Conceptual understanding of data security, threat vectors, mechanisms, actors, and landscape (Networking Protocols role).
- Ability to think towards scaling applications to the cloud (Application Software role).
- Hands-on exposure to open source and mobile application development (Application Software role).
- Interest in User Experience and User Interface design and development (Application Software role).
- Exposure to device drivers and BSPs (Embedded and Systems Development role).
Additional details
- Our team designs, builds, and supports innovative technology solutions that enable global connectivity.
- We work on diverse projects spanning networking, security, and collaboration.
- We are committed to delivering high-quality solutions that meet a wide range of customer needs, while fostering a culture of innovation, growth, and continuous improvement.