Nim Developer

iForte Solusi Infotek
Summary
Join Vac, a builder of public good protocols for the decentralized web, and contribute to the development and maintenance of Nimble, the Nim language server, and core Nim libraries. As a skilled Nim developer, you will work closely with project teams to resolve Nim-related issues and bugs, improving developer tooling and the Nim ecosystem. You will contribute to the ongoing development and maintenance of Nimble, ensuring robust dependency management. Responsibilities include addressing feature requests, resolving bugs, improving documentation, and maintaining core Nim libraries. Collaboration with users and contributors is key to implementing enhancements that streamline the developer workflow. You will also act as a liaison between project teams and the Nim core development community. The ideal candidate possesses strong Nim programming experience, understands language tooling and core programming concepts, and enjoys collaborative work.
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 $100,000 - $150,000 USD annually (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