{"id":2947386,"url":"https://alion.io/job/obsidian-systems-functional-software-engineer","title":"Functional Software Engineer","company":{"id":57425,"name":"Obsidian Systems","domain":"obsidian.co.za","url":"https://alion.io/company/obsidian-systems","size_band":"51-200","is_staffing_agency":false,"employer_type":"direct","is_intermediary":false,"listed_via":null,"ats_vendor":"Ashby","truth_index":null},"role":"Backend","role_family":"Backend","seniority":"senior","employment_type":"full_time","work_mode":"remote","remote_scope":"stated_countries","remote_scope_basis":"board_field","remote_working_hours":null,"hiring_geo_confidence":"inferred","locations":["Miami, United States"],"countries":["US"],"hiring_countries":["US","CA"],"hiring_countries_total":2,"salary":null,"salary_estimate":{"min_usd":135000,"max_usd":233000,"period":"year","method":"role_seniority_country_remote_cell","sample_n":1105},"experience_years_min":5,"visa_sponsorship":false,"relocation_package":false,"has_equity":false,"technologies":[{"name":"Clojure","optional":false},{"name":"F#","optional":false},{"name":"Haskell","optional":false},{"name":"Obsidian","optional":false},{"name":"OCaml","optional":false},{"name":"Scala","optional":false}],"status":"live","first_seen_at":"2026-10-20T15:07:49Z","employer_posted_date":"2026-10-20","last_verified_at":"2026-10-23T03:24:04Z","board_verified":true,"closed_at":null,"days_open":2,"trust":{"level":"ok","repost_count":null,"flags":[],"days_open":2},"description":"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.\nWe'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.\nAbout the Role\nWe'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.\nThis 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.\nKey Responsibilities\nDesign, implement, test, and maintain reliable software using functional programming principles.\n\nDevelop clear, composable, and maintainable solutions to complex engineering problems.\n\nApply strong typing, domain modelling, and abstraction to improve software correctness and reliability.\n\nCollaborate with engineers, technical leads, and client stakeholders to understand requirements and deliver effective solutions.\n\nContribute to the design and architecture of systems, making thoughtful trade-offs between correctness, simplicity, performance, and maintainability.\n\nWrite automated tests and use appropriate techniques to validate system behaviour.\n\nReview code, share technical knowledge, and contribute to engineering standards.\n\nInvestigate and resolve complex technical issues across existing systems.\n\nCommunicate technical decisions clearly and explain trade-offs to both technical and non-technical stakeholders.\n\nAdapt to different client environments, codebases, and technical challenges.\n\nContribute to continuous improvement across our engineering practices, tools, and delivery processes.\n\nKey Requirements\n5+ years of professional experience developing and delivering production software.\n\nStrong understanding of software engineering fundamentals, including data structures, algorithms, testing, and software design.\n\nExperience with functional programming, either professionally or through substantial projects.\n\nAbility to reason about complex problems and translate requirements into well-structured software.\n\nStrong debugging and problem-solving skills.\n\nCommitment to code quality, correctness, and maintainability.\n\nAbility to communicate effectively and collaborate with other engineers.\n\nWillingness to learn new technologies and work across different technical environments.\n\nPreferred Requirements:\nExperience with Haskell, Scala, OCaml, F#, Clojure, or another functional programming language.\n\nFamiliarity with type systems, algebraic data types, pattern matching, and immutable data structures.\n\nExperience with strongly typed domain modelling and functional design patterns.\n\nExposure to distributed systems, concurrent programming, or backend infrastructure.\n\nExperience in blockchain, financial infrastructure, capital markets, or other domains where correctness and reliability are particularly important.\n\nFamiliarity with property-based testing and other techniques for validating complex software behaviour.\n\nExperience with Nix or reproducible development environments.\n\nExperience working in an engineering consultancy or collaborating directly with client teams.\n\nHow We Work\nAt 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.\nOwn Your Work, Protect Your Team\nWe take full ownership of our responsibilities while supporting the people around us. We believe accountability creates trust, and clear ownership allows teams to move quickly without stepping on one another's work.\n\nDon't Settle for Superficial\nWe aim to understand problems deeply rather than treating symptoms. We ask questions, challenge assumptions, and make unknowns explicit so we can build durable solutions instead of temporary fixes.\n\nBe Honest Proactively\nWe communicate openly and early. Raising risks before they become problems helps our team and our clients make better decisions. We value transparency over avoiding uncomfortable conversations.\n\nGet to It\nMany of the challenges we solve have never been solved before. We don't wait for perfection; we start, learn, iterate, and move forward. Progress comes from taking the next concrete step.\n\nIf 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.","description_format":"text","description_chars":5552,"description_truncated":false,"requirements":{"experience_years_min":5,"management_years_min":null,"team_size_min":null,"manages_managers":false,"education":null,"security_clearance":false,"languages":[]},"benefits":["Continuous learning"],"hiring_locations":[{"name":"United States","iso":"US","kind":"country"},{"name":"Canada","iso":"CA","kind":"country"},{"name":"Miami","iso":null,"kind":"city"}],"hiring_excludes":[],"relocation_offered":false,"industries":["Blockchain & Crypto","IT Consulting & Digital Transformation","Custom Software Development","Engineering Services"],"lifecycle":[{"event":"open","at":"2026-10-20T19:03:26Z"}],"visa":[{"country":"US","licensed_sponsor":true,"evidence":"H-1B filings in 12 months: 2","filings_12m":2,"filings_prev_12m":0,"green_card_filings_12m":0,"median_offered_wage_usd":137500,"route":null,"cap_exempt":false,"checked_at":"2026-10-15T11:24:14+00:00","sources":["US Department of Labor: LCA disclosure data (H-1B, H-1B1, E-3)"],"filings_for_role_12m":2}],"liveness":{"score":86,"band":"hot","label":"Hiring now","p_open":1,"p_active":0.86,"p_room":1,"age_days":1,"expected_fill_days":35,"reasons":["conf:2","win:early"],"computed_at":"2026-10-22T06:10:10Z"},"pay":null,"html_url":"https://alion.io/job/obsidian-systems-functional-software-engineer","json_url":"https://alion.io/job/obsidian-systems-functional-software-engineer.json","meta":{"generated_at":"2026-10-23T03:52:40Z","cache_seconds":300,"methodology":"https://alion.io/methodology","terms":"https://alion.io/terms","contact":"https://alion.io/contact","api":"https://alion.io/developers","about":"Alion is a live layer of people, companies and AI agents: who they are, whether they are real and active right now, what they do and how to work with them, readable by people and by agents and paid per call.","catalog":"https://alion.io/catalog.json","usage":{"tier":"crawler_verified","counted_by":"address","units_charged":1,"used_today":6352,"day_limit":null,"remaining_today":null,"minute_limit":300,"resets_at":"2026-10-24T00:00:00Z"}},"offers":[{"id":"company.slices","title":"One company in depth, by slice","status":"live","price":{"credits":0.02,"usd":0.002,"plus_per_slice":{"credits":0.05,"usd":0.005}},"unit":"per company, plus each slice with data","note":"the employer in depth","call":{"mcp_tool":"get_company","arguments":{"id":57425},"rest":"https://alion.io/mcp/rest/get_company?id=57425"},"human":"https://alion.io/catalog?offer=company.slices&for=job%2Fobsidian-systems-functional-software-engineer"},{"id":"market.stats","title":"A market slice: pay, demand and time to fill","status":"live","price":{"credits":1,"usd":0.1},"unit":"per slice","note":"pay, demand and time to fill for this role and place","call":{"mcp_tool":"market_stats"},"human":"https://alion.io/catalog?offer=market.stats&for=job%2Fobsidian-systems-functional-software-engineer"},{"id":"job.search","title":"Open jobs by role, technology, place, pay and visa","status":"live","price":{"credits":0.02,"usd":0.002},"unit":"per posting in a list","note":"similar open postings","call":{"mcp_tool":"search_jobs"},"human":"https://alion.io/catalog?offer=job.search&for=job%2Fobsidian-systems-functional-software-engineer"},{"id":"company.verify","title":"Is this company real and active right now","status":"pilot","price":null,"unit":"per company","request":{"url":"https://alion.io/catalog/request","method":"POST","body":"{\"offer\": \"company.verify\", \"for\": \"job/obsidian-systems-functional-software-engineer\", \"note\": \"what you need it for\"}"},"human":"https://alion.io/catalog?offer=company.verify&for=job%2Fobsidian-systems-functional-software-engineer"}]}