People often ask me how to find F# jobs. I don't have any special connections to companies using F#, and I don't have any special tricks either. I wish I did!
So, given that, here's my take on F# jobs.
For job hunting my suggestions are:
- You could contact some of the companies known to be using F#.
- Follow the #fsharp tag on Twitter -- people sometimes post jobs there.
- The F# slack has a #jobs channel. If you've not already joined, you can join using the guide here https://fsharp.org/guides/slack/
- Look on the usual job boards. For example: Indeed.com, StackOverflow Jobs, and FunctionalJobs.com. Also the "HN Who's Hiring" posts (https://hnhiring.com/). In some cases F# is sometimes mentioned as a "nice to have" but even if you have to code in C# it means the company should be "functional-friendly" and open to change.
Most of the best jobs are found by word of mouth rather than being advertised. So in addition to job hunting, I strongly suggest networking and making people aware of you. For example:
- Participate in the F# slack, twitter, and other F# forums
- Create F# tools or projects that are useful to the F# community
- Make blog posts or videos about F#
These things will all make you better known in the F# community. That way, you will be first to find out about opportunities, and people might contact you directly if they need help.
Also, consider expanding to other functional languages. F# is great, but so is OCaml, Elm, ReasonML, Scala, Haskell, etc. If you know one of them, you can normally pick up the others reasonably quickly. Some people are even doing heavily functional C# and Typescript, so that might be an alternative as well.
If you're bored at your job, it's easy to think that using a new programming language will help. That will be true in the short term, and it's good for your resume/CV! But instead, think about finding a job where there is an interesting challenge that appeals to you, or where the culture is good. If you enjoy your day job, you can still play with F# in your free time. On the other hand, if your day job is boring, then being bored and writing F# is not much better than being bored and writing C#!