Hi #Rust developers! My Calendar team at @protonprivacy is #hiring! We are looking to fill several positions at our offices in #Barcelona, #Geneva, and #london

Job Description: https://grnh.se/op1xycx2teu

#Proton is office-first, with people coming in 3 days a week. Lunch is provided for you!

Please boost if you know a great Rust developer! If **I know you, please reach out directly** and I can refer you internally!

#rustlang #privacy #protoncalendar #protonmail #protonvpn #FediHire

Rust Engineer

Barcelona; Geneva; London;

@mgeisler @protonprivacy would be nice to get a job coding rust, I'm USA tho so cant with ya, tho I'm curious what parts y'all use rust for?

@Rin3d @protonprivacy We use it as the cross-platform foundation for our apps (and I'm told the backend and storage teams are also looking into using Rust).

So basically, we write our business logic in Rust and compile it to #WebAssembly (#Wasm) for the web, and to a shared object for loading into #Kotlin for #Android and a static library for use in #Swift for #iOS. We also have #Windows desktop clients to eventually support.

It's basically the age-old dream of write once, run everywhere 😄

@mgeisler @protonprivacy interesting, do y'all have issues with wasm limitations? In #bevyengine we have issues on the file system and async side of things.

Also are y'all thinking to use tauri for the windows desktop since you already have the wasm target?

@Rin3d @protonprivacy For Mail, we're not yet using Wasm: the web page you see on mail.proton.me is a TypeScript app from what I understand: https://github.com/ProtonMail/WebClients.

But we're working on other web apps that use Rust with Wasm. We pass events over a narrow FFI bridge using #UniFFI and that works just fine, even with async Rust. Side-effects like writing to local storage is then handled on the browser side, so the app is ultimately a mix of TypeScript and Rust.

The current desktop apps are just Electron wrappers around a web view. I'm not a fan personally: I was intrigued that I could install a Mail app on my Linux deskop, but then I saw that it's just a "weird" browser that doesn't know of the scaling I have configured in my regular browser. So what's the point? 😄

I'm not sure what the plans are for the next generation desktop apps, but I hope we do something more than just ship a web view.

For #macOS, I'm told that an #iOS app can be made to work on both platforms? I imagine one will need to carefully design things to adapt to the much larger screen, but it sounds cool overall if it's possible to target both platforms with ~1.5 the effort.