OObsidian Systems is hiringQA Automation Engineer
About Obsidian Systems
Since 2014, Obsidian Systems has built unusually high‐quality software by combining the best ideas from industry and academia. We started as a Haskell-first company---so much so that we used to call ourselves "Haskellers." That foundation still shapes how we build software: valuing correctness, clarity, and well-designed systems. While our clients use many different technologies, we bring that same Haskell-inspired mindset to every project, whether it's Scala, Rust, or something else entirely.
Position Overview
We are looking for a QA Automation Engineer to work on distributed applications supporting clients in a multi-party, privacy-preserving environment. This role is ideal for engineers who are strong in core software engineering fundamentals and excited to work in complex systems. You will design and implement automated testing infrastructure for Go backend services, DAML smart contracts, and Haskell components. This role is well-suited for someone who enjoys systematic thinking, writes clean code, and values reliability---especially in systems where correctness is non-negotiable.
What You Will Do
- Design and implement automated testing infrastructure for Go backend services, DAML smart contracts, and Haskell components.
- Set up and maintain local testing environments (Localnet) that replicate distributed ledger infrastructure.
- Develop and execute test strategies across Localnet, Devnet, Testnet, and Mainnet environments.
- Create comprehensive tests for financial logic, including:
- AMM calculations and swap quotes
- fee distributions and reward systems
- financial transaction validation
- Build and maintain API test suites for REST endpoints with authentication testing.
- Develop test suites for automated trading bots, including simulation and integration testing.
- Integrate automated tests into GitHub Actions pipelines with appropriate gating strategies.
- Design test fixtures and data management strategies for ephemeral and persistent environments.
- Implement security-focused test cases for authentication, authorization, and financial transactions.
- Maintain test plans, coverage reports, and testing documentation.
- Participate in improving test coverage, code quality, and continuous improvement.
Position Requirements
- A minimum of three years of experience in software engineering and/or QA automation roles.
- At least two years of writing automated tests in Go, Python, or similar languages.
- Proficiency with Go, including the testing package and table-driven tests.
- Experience with REST API testing and HTTP endpoint validation.
- Strong experience with Docker and Docker Compose for container-based test environments.
- Experience with distributed systems or microservices testing.
- Familiarity with CI/CD pipelines, particularly GitHub Actions.
- Intermediate knowledge of:
- SQL/PostgreSQL for database testing and query validation
- Linux/Bash for shell scripting and environment setup
- Track record of improving test coverage and code quality.
- Ability to explain test failures and their implications clearly to diverse stakeholders.
- Experience working in a remote or distributed team with strong written and verbal communication skills.
Nice to Have
- Experience with financial software testing (fintech, trading systems, or similar).
- ISTQB or similar QA certification.
- Experience with property-based testing (QuickCheck, Hypothesis).
- Background in chaos engineering or fault injection testing.
- Performance/load testing experience (k6, Locust, or similar).
- Security testing experience (OWASP, penetration testing basics).
- Contributions to open-source projects or testing tooling.
Why This Role
- Work on distributed, multi-party architectures used by large institutions.
- Solve deep technical challenges with real intellectual substance.
- Emphasis on correctness and reliability---where precision truly matters in financial systems.
- Strong learning culture with support for technical growth and picking up new languages and paradigms.
- Remote-first, flexible work environment.
- Competitive compensation based on experience and location.
How to Apply
We care more about what you can build than where you've worked. Please include:
- Your resume or CV.
- Links to GitHub, GitLab, or other public repositories showing code you've written or contributed to.
- Open-source contributions, side projects, or examples of non-trivial systems are highly encouraged.
- If a repository represents collaborative work, please briefly describe your personal contributions.
To help us process applications efficiently, please include the word "pineapple" somewhere in your application.
Apply for this job
Please let Obsidian Systems know you discovered this position on TRYremote so we can keep providing you with quality remote tech jobs.
