Design, implement, test and maintain production software using functional programming principles on client projects. Work may include backend systems, domain modelling, distributed systems, financial infrastructure, blockchain applications or developer tooling. Functional languages such as Haskell, Scala, OCaml, F# or Clojure are preferred, and Nix is a plus.
Obsidian Systems is a software engineering consultancy that builds production systems for capital markets and other regulated industries. Our clients include market infrastructure providers, national exchanges, and global financial institutions. Much of our work today centers on the Canton Network, the privacy-enabled blockchain adopted by major capital markets institutions, where Obsidian is one of the most experienced engineering firms in the ecosystem.
We're a remote-first, globally distributed team that values ownership, curiosity, and clear communication. We believe the best ideas come from people who ask difficult questions, take responsibility for their work, and collaborate openly to solve challenging problems.
About the Role
We're looking for a Functional Software Engineer to join our engineering team and contribute to challenging client projects across our technical domains. You'll design, develop, and maintain software using functional programming principles, working with engineers and client teams to turn complex requirements into robust, maintainable solutions. Depending on the project, your work may involve backend systems, domain modelling, distributed systems, financial infrastructure, blockchain applications, or developer tooling.
This role is suited to an engineer who enjoys reasoning about complex systems, values strong types and clear abstractions, and sees software development as more than simply making code work. Knowledge in every technology is not necessary. We value strong engineering fundamentals, a willingness to learn, and the ability to apply sound technical judgment to unfamiliar problems.
Preferred Requirements:
At Obsidian Systems, we believe great work comes from thoughtful people who take ownership, communicate openly, and enjoy solving difficult problems together. These principles guide how we work every day.
Own Your Work, Protect Your Team
Don't Settle for Superficial
Be Honest Proactively
Get to It
If you're excited by continuous learning and playing a real role in building the next generation of financial market infrastructure, you'll feel at home at Obsidian.