Are you obsessed with writing code? Do you have an innate desire to explore new technologies? Do you spend your spare time building and tinkering? If so, read on.
We are looking for a junior to intermediate software engineer (or developer) to join our small team of relentlessly creative builders and problem solvers in Vancouver, British Columbia.
At ECAD Labs we create and maintain open source blockchain developer tooling and infrastructure at scale, provide custom software development and consulting services and help supercharge client productivity with groundbreaking AI/LLM tools.
We forge close relationships with clients and users, are driven by curiosity, and believe that our work is our greatest calling card. We ask questions, we work collaboratively, we don't let egos get in the way of producing results.
We care more about building products than resumes and value outcomes over headcount.
We love being a small company that does big things.
Requirements
Your Responsibilities- Help drive meaningful outcomes for the business by building, maintaining, and enhancing in-house and client products
- Engage with our clients and the developer community to foster positive relationships with those we serve
- Participate in software architecture and design decisions
- Work alongside management and the development team to iteratively build and improve products
- Reinforce software quality and stability by writing production-class code supported by xUnit tests
- Participate in code reviews and collaborate with other team members on test strategy, implementation, and related process improvements
- 2+ years of professional programming experience in any mainstream language. We don't care so much what you have used, so long as you're adept relative to your experience
- You have good knowledge of software fundamentals (e.g. type systems, data structures, algorithms, design patterns, etc.)
- Ability to quickly learn new concepts and technologies
- Successfully undertake self-directed and time-limited technical research and experimental software development
- Post-secondary degree in computer science, mathematics, physics, engineering, or a related field (alternative qualifications such as unrelated degrees or diploma-level certification with strong work experience or a track record of building awesome things will also be considered)
- Prior work in, or contributions to, open-source products and communities
- Practical understanding of AI/LLM concepts and implementation
- Prior experience working with Blockchain technologies and/or cryptography
- Experience or interest in low-level programming
- Knowledge of principles of Functional Programming
- Understanding of Test-Driven Design/Development
- Programming with Rust, OCaml, or another advanced programming language
The successful candidate will work at the ECAD Labs Inc. office in Vancouver. Hybrid work structures blending at-home and in-office work are available provided team members regularly attend in-person planning, collaboration, pair programming, social and other meetings and events in Vancouver.
This is a full-time employment opportunity for residents of Canada, including permanent residents and those with an open Canadian work permit.
ECAD Labs may place additional location restrictions based on the nature of the role and teams the successful candidate may work with.
Professional TitlesSuccessful candidates who are not members in good standing with the Engineers & Geoscientists of British Columbia will be hired as Software Developers. Use of the ‘Software Engineer' title in British Columbia is limited to those who are members in good standing with the Engineers & Geoscientists of British Columbia. We think this is pretty silly, but it appears to be the law. Job duties and compensation packages are the same regardless of whether candidates are hired as Software Engineers or Software Developers.
Benefits
- Extended health and dental benefits
- Maternity/parental leave top-up benefits
- Health spending account
- Hybrid work environments
- Opportunities for professional development including conferences, seminars, and educational courses