Remote

Senior Haskell Engineer

Serokell is a fast-growing, fully-remote software development company that works on innovative solutions for complex problems. We’re packed full with adventurous, curious, and inclusive folks that want to build cutting-edge software with modern technologies like functional programming.

Serokell is building a talent pool for future projects, not hiring immediately. Submit your CV and be the first to know about an open role that aligns perfectly with your unique profile.

We’re seeking a senior-level Haskell software engineer to join a team of fierce and fun Serokellers.

We require solid knowledge of:

  • Haskell 98 features. Writing your own typeclasses. Using applicative functors. Using monad transformers and understanding the ins of outs of the most common ones (like ReaderT & StateT).
  • Modern Haskell ecosystem. You should be familiar with text, mtl, basic lenses, Stack/Cabal, type families, QuickCheck/Hedgehog, Template Haskell.
  • Algorithms and data structures. Fundamental ones, like binary search tree, DFS, hashtable, quicksort, etc.
  • Computer networks. HTTP, TCP/IP stack. Understanding of poll- and push-based data synchronization models and their usage in modern service APIs.
  • Good coding culture. Code structuring and decoupling, patch management with git, code review practices.
  • Self-organization. To a decent level.

Good-to-have, but not crucial:

  • Parsers. Writing your own parsers, using parser combinators and/or parser generators.
  • Haskell. Experience with popular libraries for real-world problems (web servers, streaming like conduit, serialization, databases, etc.); advanced type-level features: GADTs, DataKinds.
  • Cryptography. Fundamental knowledge, public/private keys, signing, encryption, hashing.
  • Experience with Rust. We sometimes use Rust for our projects, so it will be an advantage if you have previous experience with it.

We offer:

  • Competitive salary.
  • Attractive international projects.
  • Participation in the leading world conferences.
  • International teams and multicultural environment.
  • Fully remote work and flexible working hours.
  • Possibility to take days off any time you need.
  • Investment in your professional and career growth, which will correspond to wage growth.
  • Mentoring and training.
  • Opportunity to contribute to one of the functional programming industry’s leading blogs.
  • Therapy sessions to support your well-being.

By joining Serokell, you’ll become a part of a warm community of ingenious engineers, computer scientists, designers, marketing experts, and other inventive people. You will be able to take part in ambitious projects that work on building the next generation of computer software, try out crazy initiatives unhindered by bureaucracy or judgment, and have fun in our Slack channels that range from #music to #butthurt (did we mention the huge custom emoji set?).