Senior Software Developer

Cadence Neuroscience Inc — United States · Posted ~3 hours ago

🔓 Log in to save this job, tailor your resume & track your apply process — 7 days free, no card needed.

Log in to add to target list

Description

Role Description The Senior Software Developer designs and delivers reliable software spanning Linux desktop applications and embedded systems for Cadence Neuroscience medical devices. This is a hands-on development role with meaningful influence over architecture, interfaces, engineering practices, and technical decisions throughout the product lifecycle. We are looking for an engineer who understands software all the way down to the hardware it controls. Experience with processors, devices, timing, memory, communications, and physical system behavior should inform sound abstractions—not become an end in itself. The ideal candidate recognizes the difference between merely workable and genuinely great architecture, and designs interfaces that are clear, durable, testable, and difficult to misuse. Job Responsibilities Design, implement, test, and maintain graphics-rich Python/Qt desktop applications running on Linux, with particular attention to reliability, usability, performance, and supportability.Shape software architecture across components and platforms, making disciplined choices about abstraction, modularity, data flow, concurrency, performance, fault handling, testability, and long-term maintainability.Design APIs, component interfaces, data models, and user-facing workflows that communicate intent clearly, handle errors predictably, and remain stable as the system evolves.Translate user needs and system requirements into clear software requirements, architecture, detailed design, interfaces, implementation, and bidirectional traceability through verification.Create and maintain unit, integration, interface, and system-supporting tests; contribute to verification plans and protocols, investigate failures, and ensure that objective evidence is complete and traceable.Develop software under the IEC 62304 lifecycle and the company quality system, including required planning, architecture and design documentation, configuration and change control, problem resolution, risk-management support, and cybersecurity activities.Use and continuously improve the team’s SDLC toolchain and workflows, including Jira, Bitbucket or Git, branching, pull requests, code review, continuous integration, automated builds, test reporting, and defect management.Plan and execute formal software releases, including versioning, configuration baselines, reproducible builds, release notes, approvals, deployment packages, and post-release support.Provide technical leadership through thoughtful code and design reviews, mentoring, root-cause analysis, and continuous improvement of architecture, engineering practices, and team tools. Job Skills and Qualifications Bachelor’s degree in Computer Science, Computer Engineering, Electrical Engineering, or a related field, or equivalent relevant experience.At least 7 years of progressive software-development experience delivering and maintaining production software products.Advanced Python skills and substantial experience developing production desktop applications with Qt, PySide, or PyQt on Linux. Ability to evaluate and integrate AI technologies into all aspects of product design and testing.Meaningful embedded-software or system software experience, including Rust, C or C++, real-time or bare-metal systems, device communications, peripherals, resource constraints, and hardware-assisted debugging.Strong architectural judgment and the ability to distinguish a merely workable design from one that is simple, coherent, maintainable, and resilient as the product evolves.A track record of designing interfaces—APIs, component boundaries, data contracts, and user workflows—that are clear, stable, testable, and difficult to misuse.Experience with the IEC 62304 medical-device software lifecycle or a similarly regulated or safety-critical environment with rigorous quality expectations.Demonstrated experience working with requirements, traceability, verification, configuration management, and formal software release processes.Expertise with Jira, Bitbucket or Git, branching strategies, code review, defect tracking, continuous integration, build automation, and release tooling.Strong testing and debugging skills across desktop, embedded, and hardware/software boundaries, including effective use of logs, debuggers, and laboratory instrumentation.Excellent written and verbal communication skills, sound technical judgment, a collaborative working style, and the ability to mentor other developers. About Cadence Cadence Neuroscience is a clinical-stage medical technology company developing a biomarker-guided platform for personalized neuromodulation. Its investigational Biomarker Targeted Stimulation (BTS) system is designed to use patient-specific neural biomarkers to inform stimulation and measure the brain’s response to therapy in real time. Cadence is initially advancing BTS in focal drug-resistant epilepsy, with a long-term goal of developing the platform for additional neurological conditions. Cadence Neuroscience is developing investigational medical technologies that have not been approved or cleared by the U.S. Food and Drug Administration (FDA) or other health authorities. To Apply We’re looking for people who want to do meaningful work, care deeply about technical excellence, and are interested in growing with Cadence for the long term. To apply, please send your resume to dpederson@cadenceneuro.com. We value resumes that tell us something about your experience, the problems you’ve worked on, and what you’ve contributed—not simply a list of keywords or technologies. Please apply directly. We are not accepting submissions from recruiters or staffing agencies for this position.