Lakshan Fernando is a Principal Software Engineer at Microsoft with a decade of experience focused on .NET runtime performance, diagnostics, and test automation. Based in Redmond, he contributes to high-impact open-source projects like dotnet/runtime and dotnet/sdk, improving assembly loading, GC behavior, AOT scenarios, and publish/build test coverage for WinForms/WPF and Native AOT. His work blends backend performance engineering with rigorous QA—authoring tests and runtime fixes that reduce memory and startup issues while enhancing observability. Prior roles span core banking and early software firms, and he holds an MSc in Computer Science from King's College London, reflecting a long-term commitment to robust, production-grade infrastructure.
10 years of coding experience
3 years of employment as a software developer
Msc, Computer Science, Msc, Computer Science at King's College London
Contributions:44 reviews, 21 commits, 27 PRs in 1 year 1 month
Contributions summary:Lakshan primarily worked on the `CreateRuntimeRootDescriptorFile.cs` file within the `dotnet/linker` repository. Their contributions centered on parsing and handling feature switch macros in header files, as evidenced by code changes related to `BEGIN_ILLINK_FEATURE_SWITCH` and `END_ILLINK_FEATURE_SWITCH` directives. These changes involved enhancing the file parsing logic, introducing new struct for tracking feature switch and integrating the feature switch metadata within the XML output. Furthermore, they added methods to add class, field and methods based on the feature switch.
.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
Role in this project:
Back-end Developer & Performance Engineer
Contributions:245 reviews, 77 commits, 179 PRs in 2 years
Contributions summary:Lakshan primarily focused on enhancing the performance and stability of the .NET runtime, particularly within the AssemblyDependencyResolver and garbage collection areas. Their contributions involved identifying and fixing potential issues related to assembly loading, memory management, and exception handling within the AOT context. They made improvements to eventing and tracing capabilities, including enhancements for performance counter data and for diagnostic capabilities. This work indicates a focus on improving the core infrastructure and maintainability of the runtime for optimal performance.
dotnetruntimelinuxcsharpxamarin
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.
Request Free Trial
Lakshan Fernando - Principal Software Engineer at Microsoft