The Software Engineer (C#, Language Server & Extensions) will lead our initiative to relaunch BimlExpress as a VSCode extension backed by a new C# Language Server. This includes implementing robust IntelliSense features, autocompletion, and quick info for BimlScript, as well as developing a corresponding Visual Studio add-in. A significant portion of the existing BimlExpress codebase can be adapted, but the front-end extension/add-in code will need to be largely rewritten from scratch. The current Visual Studio BimlExpress add-in will also be refactored to use this new Language Server. The position will be based in Sri Lanka and will collaborate closely with the US-based product team
The Software Engineer (C#, Language Server & Extensions) will lead our initiative to relaunch BimlExpress as a VSCode extension backed by a new C# Language Server. This includes implementing robust IntelliSense features, autocompletion, and quick info for BimlScript, as well as developing a corresponding Visual Studio add-in. A significant portion of the existing BimlExpress codebase can be adapted, but the front-end extension/add-in code will need to be largely rewritten from scratch. The current Visual Studio BimlExpress add-in will also be refactored to use this new Language Server. The position will be based in Sri Lanka and will collaborate closely with the US-based product team
Responsibilities:
Language Server Development:Design, develop, and maintain a new C# Language Server powering code autocompletion, hover information, syntax checks, and other IntelliSense features for BimlScript.Integrate existing BimlExpress logic where possible while refactoring and improving code performance and maintainability.Collaborate with product managers and domain experts to define requirements for advanced code analysis and completion rules.
VSCode Extension Creation:Develop a new VSCode extension in TypeScript to interface with the C# Language Server.Implement user-friendly UI/UX components such as code snippets, hover tooltips, and inline documentation.Ensure seamless integration, testing, and debugging within the VSCode environment.
Visual Studio Add-In Development:Create a Visual Studio add-in that leverages the same Language Server functionality, maintaining a unified codebase.Adapt and reuse existing BimlExpress logic where possible while building new components and interfaces.Maintain consistency in user experience across both VSCode and Visual Studio.
Code Review & Best Practices:Conduct peer code reviews, enforce coding standards, and optimize existing code for performance and security.Assist in maintaining a clean, maintainable code structure that supports both the extension and add-in development tracks.
Testing and Debugging:Implement and maintain unit tests, integration tests, and end-to-end tests to ensure reliability.Debug and resolve issues related to language server communication, IDE-specific functionalities, and overall software performance.
Projects:Collaborate with cross-functional teams (product management, QA, design) to meet project requirements and deadlines.Contribute to continuous integration and continuous delivery (CI/CD) pipelines as part of an agile development process.To be successful in this role, you will have:
Essential:Systems/Software:C#/.NET with a strong background in modern .NET frameworks.TypeScript experience, especially for VSCode extensions or similar.Language Server Protocol (LSP) knowledge for IntelliSense/auto-completion functionality.Visual Studio extension or add-in development, or other IDE extension experience.Version control (Git) and familiarity with CI/CD (Azure DevOps, GitHub Actions, or similar).
Experience: A minimum of 3–5 years of professional software development experience.Proven experience designing, implementing, debugging, profiling, and tuning high-performance developer tools or similar software.Ability to write clean, maintainable code and review contributions from peers thoroughly.Excellent communication skills for an international, distributed team.
Nice to Have:Familiarity with Biml, SSIS, ADF, or data warehousing concepts.DevOps experience (Azure, Docker) for hosting or containerizing solutions.Tertiary degree in Computer Science, Engineering, or related field.