Senior Desktop Software Engineer KSA
Listed on 2026-02-16
-
IT/Tech
IT Support
File Cloud is looking for a highly skilled Senior Desktop Software Engineer to join our team in Riyadh, the Kingdom of Saudi Arabia. You will help drive the development of our cross-platform desktop client. Your primary focus will be the UI and Type Script backend inside the Electron application, which communicates with native C++ (Windows) and Swift (macOS) components. You will also participate in projects integrating with Microsoft Office (especially Outlook and Office add-ins).
The ideal candidate has a strong product and ownership mindset and can take over end-to-end ownership of specific modules or domains over time. This role is fully office-based and will require working in our office in Riyadh and connecting with the wider, global File Cloud team.
File Cloud is a hyper-secure EFSS (enterprise file sync and share) platform that provides industry leading compliance, data governance, data leak protection, data retention and digital rights management capabilities. File Cloud is a leader in content governance and collaboration for unstructured data, trusted and used worldwide across Global 1000 enterprises, educational institutions, government organizations, and service providers. In addition to its enterprise file sharing solution, File Cloud’s product portfolio also includes Signority (acquired in May 2024), a Canadian-based e‑signature and document workflow platform.
We are currently expanding our team as we grow and improve File Cloud.
- Design, implement, and maintain features in our Electron‑based desktop application using Type Script and Vue 3.
- Develop and maintain the Electron main process / Type Script backend, including IPC between main and renderer processes, integration with gRPC services that talk to C++ and Swift backends, and robust error handling, logging, and diagnostics.
- Build responsive, modular UIs using Vue 3, vue‑router, and state management (e.g., Pinia(preferred) or Vuex).
- Work with electron‑builder and related tooling to create installers for Windows (e.g., EXE/MSI/MSIX) and macOS (DMG/PKG), implement and maintain auto‑update mechanisms, and handle code signing and notarization for both platforms.
- Collaborate with C++ (Windows) and Swift (macOS) team members to define gRPC APIs, understand native behavior, and debug cross‑process issues.
- Contribute to Microsoft Office integration projects, especially Outlook and Office add‑ins (Office.js, manifests, deployment) and interactions between the desktop client and Office or related web services.
- Ensure high code quality through unit and integration tests, code reviews, and adherence to coding standards (Type Script + Vue).
- Participate in architectural and design discussions to improve modularity, testability, and performance.
- Diagnose and resolve platform‑specific issues on Windows and macOS, including file system nuances, OS integration, and performance bottlenecks.
- Over time, take ownership of specific parts of the system (modules, features, or domains), becoming the primary point of contact and decision‑maker for those areas.
Skills & Experience:
Programming Languages & Frameworks
- Strong proficiency in Type Script (preferred over plain JavaScript), including types, generics, strict typing, and good type modelling.
- Solid experience with Vue (ideally Vue
3) in production environments. - Experience with state management in Vue using Pinia or Vuex (either is acceptable).
- Proven experience building Electron.js desktop applications in production.
- Solid understanding of main vs renderer processes, IPC patterns, preload scripts, and security considerations.
- Hands‑on experience with electron‑builder or similar tooling: creating installers for Windows (EXE/MSI/MSIX) and macOS (DMG/PKG), handling auto‑update mechanisms, and performing code signing and notarization on Windows and macOS.
- Experience integrating with backend services via gRPC or a similar typed API / RPC technology (e.g., REST + OpenAPI/Swagger, Graph
QL, Thrift). - Willingness and ability to quickly learn and use gRPC in day‑to‑day work: working with .proto files, using generated…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).