You know Haskell is an outstanding language for parallel and concurrent programming, and you know how fast Haskell code can be. FP Complete, the leading Haskell company, is working on a powerful, scalable medical application. We need a senior Haskell developer to work on high performance computing and related projects.
You’ll create a general purpose set of libraries and tools for performing big distributed computations that run fast and are robust, and general-purpose tools to monitor such programs at runtime and both profile and debug them. Using your work we’ll perform very large volumes of computation per CPU, across multiple cores and across multiple servers.
This is a telecommute position which can be filled from anywhere, with some preference given to applicants in North America and especially the San Francisco and San Diego areas. You should have these skills:
- overall strong Haskell application coding ability
- experience building reusable components/packages/libraries,
- experience writing high-throughput computations in math, science, finance, engineering, big data, graphics, or other performance-intensive domains,
- a solid understanding of distributed computing,
- an understanding of how to achieve low-latency network communication,
- knowledge of how to profile Haskell applications effectively,
- work sharing or distributed computing algorithms,
- multicore/parallel application development.
These further skills are a plus:
- experience building scalable server/Web applications,
- experience tuning GHC’s runtime options for high performance,
- some experience working on GHC internals,
- knowledge of Cloud Haskell,
- knowledge of Threadscope or similar profiling tools,
- an understanding of the implementation of GHC’s multithreaded runtime,
- experience as a technical lead and/or a manager,
- experience as an architect and/or a creator of technical specs.
In addition to these position-specific skills, candidates are expected to have clear written and verbal communication in English, the ability to work well within a distributed team and experience with typical project tools (Git or similar revision control system, issue tracker, etc).
Please submit your application to firstname.lastname@example.org. A real member of our engineering team will read it. In addition to a resume/CV, we very much like to see any open source work that you can point to in the relevant domains, or comparable source code you can show us.