.NET framework – trends and challenges. An interview with Enriko Riba
Today we’re talking about the .NET technology with one of the most proper experts at Spyrosoft – Enriko Riba, who holds the position of Principal .NET Architect at the Croatian company’s branch.
.NET is an open-source project invented and maintained by Microsoft. It consists of class libraries and a runtime environment with which you can develop APIs, web front ends, or multiplatform applications.
According to the 2022 Developer Survey conducted by Stackoverflow, .NET is one of the most popular frameworks; 34.55% of respondents stated that they use it.
Any questions about .NET? Good! Let’s ask the most appropriate person – Enriko Riba, Principal .NET Architect at Spyrosoft.
You can also ask Enriko your questions during the Spyrosoft Learn & Chat event on the 16th of February in Zagreb. Here you’ll find more information about the event and a registration form.
What’s your professional background?
Currently, I hold the position of Principal .NET Architect at Spyrosoft. I have been working there for a year and a half.
Additionally, I have 30 years of professional experience in developing enterprise grade applications, team and dev leading, consulting, and software architecture. I focus on large scale solution architectures, Azure or cloud-based environments in-general, containerisation, Kubernetes and distributed systems.
Those activities are in my mind, but in my heart is game development. I am a founder and admin of several game dev open-source projects, and I am a member of other related OSS projects and communities.
How do you find Spyrosoft so far? What do you appreciate the most?
Having a very technical background and still being a hard-core developer at heart, I really enjoy getting involved hands-on with the dev teams’ daily activities.
In my experience, one of the most impacting factors in technical employee churn is a lack of personal development. Not every company has the capacity nor the opportunity to get involved in the very latest and leading-edge technologies. Highly skilled engineers have invested both time and money in building their expertise, but technical skills have a short expiry time and must be constantly renewed. Not being able to improve them by working on new technology stacks is a no-go. Companies not taking care of this aspect or not having the ability to offer personal development to their employees are on track to lose skilled engineers with a high level of expertise.
Spyrosoft enables you to work with innovative technologies and challenging projects, forcing you to develop. I consider myself lucky to work in such a challenging environment.
Speaking of challenges, what was the first one you faced here?
Overall, it has been a roller-coaster ride. I started one project with great expectations based on the customer’s desire to build a large-scale cloud-based IoT platform on Azure. Over the next six months or so, the work on that project got more and more diluted due to the customer’s many internal challenges. The biggest obstacles were the need to restructure their organisation to support such a large-scale project crossing the boundaries of all their business units or introducing new methodologies and procedures and transforming their business to a cloud-first environment.
As of today, this door is still closed, but a new one soon opened with a similar project bringing a new set of challenges.
What are the plans for the .NET framework’s future development?
The .NET framework has a very well-established release cadence, feature map, road map, or milestones per release. The current .NET 7 is an STS release with the end of support on 14.03.2024, while the following .NET 8 framework will be an LTS release (long-term support) targeting November 2023.
Are there any trends or directions that seem especially promising to you?
The top one is definitively the rise of ASP.NET. Its popularity is unmatched and seems unstoppable!
Machine learning (ML.NET) is currently the underdog and more of a niche technology. Still, with the popularity increase of artificial intelligence in general as well as machine learning, we might be in for a surprise.
Using .NET, you can build a microservice-based application. Let’s focus on microservices for a second.
Microservices are processes or services that provide specific functionality in a way that is entirely independent of the other parts of the system. As such, they can be developed, deployed and maintained autonomously.
A common misconception is that you build your product around a set of predefined microservices. Microservices are designed based on specific domain requirements, usually based on principles of DDD (domain-driven design). There is no optimal number of them. You analyse the business domains that need to be part of your solution; you try to find boundaries between various components in the problem domain – DDD calls that the bounded context. This process is more of an evolution of your understanding of the problems. Still, eventually, you have a picture of such boundaries, important entities, events, and business flows in boundaries and try to translate them to microservices.
What benefits can .NET bring to companies?
Acquiring technical staff is an extremely limiting factor for businesses set up for growth and expansion. Tech companies often have killer features and ideas for their products but simply have no time and resources to implement them. Hiring a new team of, say, 7-10 engineers in a reasonable amount of time to support such an expansion is often mission impossible.
Given the popularity of .NET among developers, companies focusing on the .NET tech stack enjoy at least the benefit of having the largest pool of talent on the market compared to other technology stacks.
As a Principal .NET Architect, do you have any tips on how to master oneself in this area?
The name of the game was and still is self-improvement. Even after +30 years of professional experience, I still spend several hours daily researching and evaluating new technology, coding a PoC or simply trying out new stuff.
This is a pre-requisite. If one is not into that or not ready to sacrifice vast amounts of personal time to build up their skills, it is hard for me to see how a company, no matter how interesting or how leading edge it’s projects, can provide sufficient skill sharpening to make an impact.
I know this is not everyone’s cup of tea, but that’s why not everyone is able to advance their career.
You are a speaker during the Spyrosoft Learn & Chill event in Zagreb this year.
That’s right. The main topics will be a hands-on experience and introduction to Dapr, the distributed application runtime from Microsoft and using the Tye CLI tool to boost the developers’ day-to-day experience in a distributed microservice-based environment.
Is the event only for .NET enthusiasts?
While the focus will be on .NET developers to some extent, Dapr is not limited to .NET by any means. In fact, Dapr is language and tech stack neutral; you can utilise all its building blocks from any language capable of invoking HTTP requests! It is also backend neutral, meaning it runs the same locally or on any mainstream cloud like Azure, Google Cloud, or Amazon Web Services, to name a few.
Anyone building distributed systems will find some takeaways regardless of their platform. On the other hand, the side-topic about Tye is .NET-centric and applicable only to .NET projects, but the highlight of the day is still Dapr.
Ask your question during the Spyrosoft Learn & Chat on the 16th of February in Zagreb
On the 16th of February, we’re conducting a live event at WESPA Spaces in Zagreb. The keynote will be the .NET technology, but you don’t have to be an expert to join us!
On the stage, we will host, among others, Dragan Petric, tech editor, analyst, and LinkedIn tech influencer; Enriko Riba, Principal .NET Architect; Lada Borovina Kovjanić. Senior .NET Software Engineer, or Krzysztof Węzowski, Java Technical Lead.
There will be two speeches: one on Unravel microservices with Dapr and Tye and the second on being a tech influencer. After that, Tomislav Marjanovic, Senior Project Manager, will moderate a panel discussion. And then, loaded with knowledge, we’ll take a well-deserved rest during the Chill with Spyrosoft get-together.
Click here and register now – the places are limited. See you there!