tl;dr If you’d like a job with us, and in particular if you are enthusiastic about teaching Haskell, send your application as soon as possible.

We are looking for a Haskell expert to join our team at Well-Typed to focus on teaching. This is a great opportunity for someone who is passionate about Haskell and who is keen to improve and promote Haskell in a professional context.

About Well-Typed

We are a team of top notch Haskell experts. Founded in 2008, we were the first company dedicated to promoting the mainstream commercial use of Haskell. To achieve this aim, we help companies that are using or moving to Haskell by providing a range of services including consulting, development, training, and support and improvement of the Haskell development tools. We work with a wide range of clients, from tiny startups to well-known multinationals. We have established a track record of technical excellence and satisfied customers.

Our company has a strong engineering culture. All our managers and decision makers are themselves Haskell developers. Most of us have an academic background and we are not afraid to apply proper computer science to customers’ problems, particularly the fruits of FP and PL research.

We are a self-funded company so we are not beholden to external investors and can concentrate on the interests of our clients, our staff and the Haskell community.

About the job

The role is not tied to a single specific project or task, and is fully remote.

However, somewhat deviating from our usual modus operandi, this time we are interested in hiring someone who is particularly enthusiastic about (and ideally experienced in) teaching.

At Well-Typed, teaching Haskell has been one of the fundamental services we have provided nearly from the start. Often, some amount of teaching is a natural part of consulting work, but quite often, we are also hired for dedicated training courses by our clients.

The topics range from general introductions to Haskell and functional programming all the way to rather specific topics that are specifically tailored to the needs of a particular client, and sometimes move beyond Haskell into other topics, such as security, formal methods, or smart contracts.

Currently, primarily due to the Covid restrictions, most of our teaching is delivered remotely, but in the past, we have also been delivering courses on-site, and we may return to that in the future.

There is a variety of ways in which you could help us scale up our teaching efforts, including but not limited to the following:

  • helping us to develop new training materials and exercises,

  • maintaining and improving existing training materials and exercises,

  • developing and improving tooling around teaching, for example for partially auto-reviewing solutions to tasks, so that individual feedback can really focus on individual aspects of the solutions of participants,

  • delivering course sessions, answering questions by participants, and reviewing assignments submitted by course participants.

In addition to the teaching-related tasks, there will probably still be scope for regular consulting tasks, which may involve:

  • working on GHC, libraries and tools;

  • Haskell application development;

  • working directly with clients to solve their problems.

We try wherever possible to arrange tasks within our team to suit peoples’ preferences and to rotate to provide variety and interest.

About you

Having a good understanding of Haskell is essential, as is being able to communicate this understanding effectively. Familiarity with other languages and good software engineering practices are also useful.

It helps if you are confident in presenting in English, talking about various technical topics, both in front of a live audience and in a remote video call scenario. It also helps if you are good at preparing clear written materials to support the courses. It is furthermore helpful if you can teach not just based on your own materials, but also based on materials that have been prepared by others.

You are likely to have a bachelor’s degree or higher in computer science or a related field, although this isn’t a requirement.

Further (optional) bonus skills:

  • experience with Cardano and/or Plutus,

  • experience of consulting or running a business,

  • knowledge of and experience in applying formal methods,

  • familiarity with (E)DSL design,

  • knowledge of concurrency and/or systems programming,

  • experience with working on GHC,

  • experience with web programming (in particular front-end),

  • … (you tell us!)

Offer details

The offer is initially for one year full time, with the intention of a long term arrangement. Living in England is not required. We may be able to offer either employment or sub-contracting, depending on the jurisdiction in which you live.

If you are interested, please apply by email to . Tell us why you are interested and why you would be a good fit for Well-Typed, and attach your CV. Please indicate how soon you might be able to start.

We are looking to fill this position as soon as possible, but depending on various factors, we may be able to hire more than one person. In any case, please try to get your application to us by 15 November 2021.