About Me


I am Carlos Jimenez, a Software Engineer from the Costa Rica. I have been working professionally since 2015, but I have been active in learning about tech long before that. My dad was a software engineer and taught me some programming basics when I was a kid, and I have been hooked ever since. I am particularly passionate about web development, specifically in finding different strategies to solve different problems in the field.

I am the writer and maintainer of 3 different open-source projects, Vite.NET, Windy UI and Razor Component Tag Helpers. All these projects have one thing in common and it is to expand the capacity of what you can regularly do with server-rendered HTML. This was a strong interest of mine for almost 2 years, which is what lead to the creation of these tools.

I am a proud father of two children, and I love spending time with them. I love 3d printing and I like printing new toys for them from time to time. When I am not working, I am usually playing video games or reading books. My favorite pragmatic philosophy book is Antifragile by Nassim Taleb.

I have been lucky to be able to work in lots of different projects throughout my career, from small applications, to large corporate tools. I have lead several teams in the development and architecture of several apps. The highest impact app I worked on was trainme.cloud, a white label SaaS B2B LMS system that was implemented from scratch in which I architected the entire application before progressively forming a proper development team.

My favorite technology to work with is .NET Core and C#, but by no means is it the only one I am proficient with, as I have worked in projects where I had to use NextJS, Laravel, Python, React, Angular and others, but the main content you will find in this blog is regarding architectural practices and patterns and how you can implement them in your .NET Core applications.

As a software developer, I am a pragmatist and I believe that you should always pick the right tool for the right job and one shouldn't be dogmatic about the tools one uses. Ultimately, and despite what our developer egos might say, a customer needs a solution, not an application written in your favorite stack. I believe a pragmatic approach is the best way to spend less time nitpicking about technology and more time delivering value to our customers.

I am always looking for new opportunities to learn and grow, so if you have a project you think I could help with, feel free to reach out to me at: [email protected] or find more information about my work experience at my LinkedIn profile.