Nim Developer

Logo Logos
Summary
Join Vac, a builder of public good protocols for the decentralized web, as a skilled Nim developer. Contribute to the development and maintenance of Nimble, the Nim language server, and core Nim libraries. Work closely with project teams to resolve Nim-related issues and bugs, improving developer tooling and the Nim ecosystem. The ideal candidate possesses strong Nim experience, understands language tooling and core programming concepts, and enjoys collaborative problem-solving. Passion for open-source development and tackling complex technical challenges is essential. The role involves contributing to the Nim compiler, Nimble (package manager), and nim-suggest, ensuring efficiency, reliability, and up-to-dateness. You will also maintain core libraries developed by IFT, such as Chronos, and provide support to IFT projects regarding the use of Nim.
Requirements
- Proficiency in Nim programming language, with hands-on experience developing and maintaining Nim projects
- Experience with C, C++, Rust, or similar, especially in systems or embedded programming contexts
- Solid understanding of data structures and algorithms
- Experience with concepts such as parsing, lexing, and semantic analysis, especially as they relate to compilers or language tooling
- Familiarity with Nim’s standard library and ecosystem, including asynchronous programming, networking, and multi-threaded programming
- Experience maintaining or contributing to package managers or similar developer tooling (e.g., Nimble)
- Understanding of language server protocols and experience working with or developing language servers
- Proficiency in Git
- Strong debugging and testing skills, with the ability to identify, report, and resolve issues across multiple projects
- Effective communication skills for collaborating across teams and reporting on bugs and issues
- Problem-solving ability and attention to detail
Responsibilities
- Contribute to the ongoing development and maintenance of Nimble, the official package manager for Nim, ensuring robust dependency management and a smooth developer experience
- Address feature requests, resolve bugs, and improve documentation for Nimble to support the Nim ecosystem
- Develop, maintain, and extend the Nim language server to improve IDE integration, code completion, error diagnostics, and overall tooling for Nim developers
- Help maintain and evolve Nim core libraries
- Collaborate with users and contributors to identify and implement enhancements that streamline the developer workflow
- Monitor, collect, and consolidate Nim-related issues and bugs arising in various IFT projects, and either report or directly address and resolve these issues as appropriate
- Act as a liaison between IFT project teams and the Nim core development community, ensuring that feedback and requirements are clearly communicated and tracked
Preferred Qualifications
- Experience working for an open-source organization
- Knowledge of type theory and programming language foundations
- Experience with peer-to-peer technologies, blockchain, or cryptography
- Background in IDE tooling, language tooling, or developer experience improvements
Benefits
- The expected compensation range for this role is negotiable, dependent on how we assess your skills and experience throughout our interview process
- We are happy to pay in any mix of fiat/crypto
Share this job:
Similar Remote Jobs

