Systems engineer at SimpleX Chat

SimpleX Chat is a fully open-source, private and secure messaging platform. It is the first, and it seems the only, messaging network that does not have any kind of user identity in its design (not even random numbers) - it uses anonymous pairwise identifiers instead.

It is also a seed stage startup with a lot of user growth in 2022-2023, and a lot of exciting technical and product problems to solve to grow faster.

We are looking for a systems Haskell engineer who:

  • wants to work in a startup (high pace and intensity, longer hours, a substantial part of the compensation is stock options, solving only customer problems and avoiding over-engineering).
  • expert in Haskell, including:
    • strictness.
    • network libraries.
    • exception handling, concurrency, STM.
    • type systems - we use ad hoc dependent types a lot.
  • exceptionally pragmatic.
  • has some expertise in network protocols, cryptography and general information security principles and approaches.
  • interested to build the next generation of messaging network.
  • does not suffer from “not invented here” syndrome, and at the same time interested to design and implement protocols and systems from the ground up when appropriate.

We prefer links to projects and blog posts and short descriptions to CVs – please don’t send more than 1/2 of the page.

No need to apply via LinkedIn, please just reach out.

11 Likes

I don’t have a LinkedIn account, does this job position involve Haskell?

edit: many thanks @epoberezkin and welcome to the community!

2 Likes

Added the full copy there! :slight_smile:

3 Likes

Interesting! I wanted to ask a few questions, and figured they might be helpful for others as well so I will ask them openly:

  • Is this position remote? I suspect but would like to confirm.
  • What is your company’s position on open-source?
  • Would you be interested in candidates without professional Haskell experience, but who are looking to make the jump? (context: I have used Haskell longer than my latest industry language)
2 Likes

Is this position remote

Yes

  • What is your company’s position on open-source?

SimpleX Chat is 100% open-source

Would you be interested in candidates without professional Haskell experience, but who are looking to make the jump

Very unlikely, only if they can learn really fast (0.1% percentile) and have strong background in mathematics, lambda calculus etc.

2 Likes

Although I missed the word “professional” - not sure what is meant here then, I was answering to “no Haskell experience”.

2 Likes

Yes - allow me to rephrase the question:

Owing to the smaller market comparative to other languages, there are fewer Haskell jobs available, and sometimes the lack of Haskell-related employment history can be a barrier to entry.

Haskell has been my go-to language for 7+ years now, but I have never held a Haskell-related position before, having always found it easier to find professional work in another language.

Would you be interested in candidates who have substantial experience with Haskell, as well as the tech / software engineering industry in general, but who have not necessarily used Haskell in a professional context?

3 Likes

Just want to say I think SimpleX is one of the coolest, most relevant open source projects out there. It walks the trade-off between privacy and convenience in a novel way that makes it a significant improvement over other chat infrastructure. Specifically out of band key exchange (Signals model here is “trust us we wouldn’t do that”), and hiding graph of user interactions from the servers should both become industry standards. Bonus points for being in Haskell. Bonus points for Android and iOS apps from Haskell! Bonus points for a custom double ratchet cryptography system.

Hope you can find someone super skilled to help and encourage everyone to contribute to this one just because it is awesome. One of the good guys. github simplex link

10 Likes

I concur Taylo’s message.

I have been a SimpleX installee since it was first out! But the only problem is I only have one contact there, and we barely chat!

If there is secrete Haskell group there, I would definitely like to join :slight_smile:

3 Likes

Yes, absolutely. Let’s talk. I don’t think about it in terms of “filling vacancy” or “role”. We’re all missionaries, and it’s an exceptionally engineering led culture already, and will remain as such. I put a much higher value on the gradient than on y-intercept, and in some cases we would even consider zero Haskell experience.

Please send some short description of what you’ve done, any links, etc - no need for a full CV.

1 Like

Thank you, Taylor! You are selling it better than I do :slight_smile:

why don’t we make one :slight_smile: We don’t push groups, as they have lots of quirks, and “communities” product is one of big priorities for the next 9 months, with 2 other things. But users created lots of public groups and share the list in the group of users that we maintain.

I created a “HaskellX” group. It was quite a smooth
process :slight_smile:

1 Like

I will compose and send something to you in the morning, then. :slight_smile:

1 Like

I am curious, what does this mean?

the link seems to be incorrect, or maybe discourse stripped hash fragment?

that’s what I usually suffer from, having a strong preference to building things rather than using what already exists… Got a bit less acute lately :slight_smile:

1 Like

I fixed it.

I tried to connect to my own link, I did succeed. But now I have two same groups, perhaps a bug?

Hey epoberezkin, I’m interested, can we talk?

Do you mind pointing out where you use dependent types in the simplex code base? I wanted to see an example of what you meant by ‘ad hoc dependent types’, but didn’t find any type families.