Software Engineer - Application development
Summary
Cisco is seeking a Software Engineer to design and build features for Webex collaboration products using modern C++ and cross-platform development techniques. The role involves leading technical designs, mentoring team members, and ensuring high-quality, performant experiences across desktop and mobile applications.
Meet the Team
Cisco's Webex Engineering Group is redefining the future of collaboration. We’re building a world where people connect effortlessly to enjoy modern, uncompromised collaboration across every room, desk, pocket, and application.
Our technology powers industry-leading products such as Webex Meetings, Webex Calling, and Webex Contact Center. As a member of our team, your work will ensure every user gets a truly immersive experience across desktop and mobile devices, empowering the hybrid working patterns of the future.
Our engineering teams know the right things to do and are empowered to do them. This is a friendly, energetic environment with a fast pace of delivery, working closely with UX design and product management teams.
Your Impact
- Design, build, and technically lead end-user features used by millions of people worldwide across desktop and mobile applications.
- Develop high-quality, performant application software using modern C++, including shared components and capabilities integrated into native iOS and Android experiences.
- Own the breakdown of product requirements into clear technical designs and executable tasks, delivering high-quality, maintainable solutions within an existing framework.
- Make pragmatic design decisions across shared, cross-platform code and platform-specific implementations, taking account of performance, reliability, security, accessibility, battery life, and device constraints.
- Act as a technical point of reference for the team—reviewing designs and code, guiding implementation decisions, and raising the bar for engineering quality.
- Listen to the customer and elevate their experience. CSAT, NPS, app feedback, crash data, telemetry, and quality metrics are their voice—investigate issues, identify root causes, and drive meaningful improvements.
- Partner closely with engineers, product managers, and designers to deliver consistent, intuitive experiences across platforms, balancing speed, quality, and long-term sustainability.
- Improve engineering efficiency through automation, including development tooling, test automation, CI/CD workflows, diagnostics, and mobile build and release processes.
- Enable the team to focus on complex problems by using AI tools effectively and responsibly across the development lifecycle.
- Mentor and support other engineers, fostering a culture of learning, ownership, and continuous improvement.
- Bring your fun, curiosity, and personality to the team.
Minimum Qualification
- Education: Bachelor’s degree in an analytical subject such as Computer Science, Electronic Engineering, or Software Engineering, or equivalent practical experience.
- Experience: 5+ years of professional software development experience or equivalent, with a strong track record of delivering production-quality software at scale.
- Programming: Strong proficiency in modern C++ or another relevant language, such as Swift, Kotlin, Java, C#, Rust, or Objective-C, along with the ability and willingness to work in and develop proficiency with modern C++.
- Application development: Experience developing customer-facing applications for at least one major platform, such as iOS, Android, Windows, macOS, Linux, or Web, and the ability to apply that expertise in a cross-platform environment.
- Technical depth: Strong software design and programming expertise, with the ability to make sound technical decisions and quickly learn new technologies and platforms.
- Problem solving: Proven ability to apply and lead a structured, scientific, and creative approach to solving complex engineering problems.
- Leadership and collaboration: Experience working in cross-functional teams, influencing technical direction, and communicating clearly with technical and non-technical stakeholders.
- Quality focus: Deep commitment to software quality, including test strategy definition, code reviews, automation, observability, and continuous improvement practices.
Preferred Qualification
- Professional experience with modern C++, particularly in a large, long-lived, cross-platform, or performance-sensitive application codebase.
- Experience developing native mobile applications for iOS or Android using Swift, Objective-C, Kotlin, or Java.
- Experience integrating shared C++ libraries or SDKs with native mobile code, including language interoperability, APIs, build systems, debugging, and lifecycle or memory-management considerations.
- Understanding of mobile application architecture and platform conventions, including background execution, concurrency, networking, offline behaviour, permissions, accessibility, security, battery efficiency, and varying device capabilities.
- End-to-end development experience in one or more of the following areas:
- Languages: Modern C++, Swift, Objective-C, Kotlin, Java, Python, or TypeScript/JavaScript
- Application and UI frameworks: SwiftUI, UIKit, Jetpack Compose, Android SDK, Qt, Cocoa, React Native, React, Angular, or similar
- Back end and integration: Java/Spring, RESTful APIs, WebSockets, distributed systems, push notifications, or API design
- Experience using mobile diagnostics and product data—such as crash reports, performance traces, logs, telemetry, or app-quality metrics—to identify root causes and guide improvements.
- Experience with mobile build, signing, packaging, automated testing, staged rollout, and release processes, including App Store or Google Play delivery.
- Experience leading or significantly contributing to system design, architecture discussions, and technical decision-making.
- Strong experience with unit, integration, UI, and end-to-end testing, including contract testing and automation in CI pipelines across desktop or mobile platforms.
- Experience creating automation using Python or a similar scripting language for tooling, testing, builds, diagnostics, data analysis, or operational workflows.
- Practical experience or strong interest in AI-assisted development, including the use of LLM-based tools for scaffolding, refactoring, test generation, debugging, and improving developer productivity—with clear ownership of validated, production-ready code.
- Familiarity with Git, DevOps practices, continuous integration, and continuous delivery.
- Experience developing or optimising applications across iOS, Android, Windows, macOS, Linux, or Web platforms.
CollabHiring
Why Cisco?
At Cisco, we’re revolutionizing how data and infrastructure connect and protect organizations in the AI era – and beyond. We’ve been innovating fearlessly for 40 years to create solutions that power how humans and technology work together across the physical and digital worlds. These solutions provide customers with unparalleled security, visibility, and insights across the entire digital footprint.
Fueled by the depth and breadth of our technology, we experiment and create meaningful solutions. Add to that our worldwide network of doers and experts, and you’ll see that the opportunities to grow and build are limitless. We work as a team, collaborating with empathy to make really big things happen on a global scale. Because our solutions are everywhere, our impact is everywhere.
We are Cisco, and our power starts with you.