About the role
What will you do at Swiftkey?
Design and implement native Windows components in modern C++ with deep integration into Win32, COM, Windows services, and system APIs. Work on device redirection, input, display, audio/video, USB, HID, and peripheral integration used by remote desktop and virtualization scenarios. Create and maintain solutions to ensure that keyboard input is secure from keyloggers running on the local client device (Windows Cloud Input Protection).
Develop and maintain cross‑process, cross‑thread, and performance‑critical code paths where correctness, latency, and stability matter. Bachelor's Degree in Computer Science or related technical field AND 4+ years technical engineering experience with coding in languages including, but not limited to, C, C++, or C#. OR equivalent experience.
Solid experience in C or C++, with production‑quality, shipped code. Experience building native Windows applications or system components. 4+ years of professional development experience on Windows. Deep knowledge of Win32, COM, Windows services, and system internals.
Experience with device integration, low‑level input, audio/video, USB, or driver‑adjacent code. Experience debugging performance, memory, and concurrency issues in native codebases. Familiarity with remote desktop or virtualization technologies such as RDP, PCoIP, or ICA.
Experience working close to the OS, including diagnostics with ETW, dumps, and debuggers. Diagnose and fix issues spanning kernel / user‑mode boundaries, OS integration, drivers, services, and client applications. Participate in the full lifecycle: architecture, implementation, testing, deployment, and live‑site debugging using telemetry, dumps, and traces.
Contribute to engineering excellence through code reviews, design reviews, testability, and long‑term maintainability.
Which skills does this role require?
Make your next move
Build a shortlist and prepare
Identify the requirements you can demonstrate, then choose examples from your work to discuss with the hiring team.
- Build a focused shortlist before you applyCompare role requirements with your experience and give each application a clear reason.
- Practice explaining your experience in an interviewRehearse your answers before meeting the hiring team.
Other roles to compare
Review the responsibilities and requirements before adding an opening to your shortlist.
Senior Systems Engineer - Maritime Enabling Technology
Anduril Industries · Quincy, Massachusetts, United States
Senior Supplier Industrialization Engineer, Electromagnetic Warfare
Anduril Industries · Costa Mesa, California, United States
Senior Electrical Engineer, BMS
Anduril Industries · Costa Mesa, California, United States
Senior Firmware Engineer, Manufacturing Test
Anduril Industries · Atlanta, Georgia, United States
Senior Software Engineer, Platform Overlay & Networking
Anduril Industries · Irvine, California, United States
Senior Manufacturing Process Development Engineer, Intelligence Systems
Anduril Industries · Santa Ana, California, United States
Role information can change. Prepin can help you prepare, but does not submit an application for this role.