My tech stack, what to focus now?
- .NET Core
- Entity Framework Core (Code First)
- MVC
- Web API
- Identity and JWT
- Mediator & CQRS
- SignalR
- N-Layered Arch.
- Onion Arch.
Im a 3rd grade computer engineering student. I have those subjects in my tech stack. What should i focus now? I think DDD, Microservices are important but i dont know the which order should i follow
20 Replies
To what end? What are you pursuing? Hard to give recommendations for academics. Are you asking us what is useful for you to know, or what you should learn for your courseload at uni?
Microservices are essentially just apis on a distributed network, so if you know the individual parts of that topic, then you don't really need to practise/study microservices (in my opinion, someone might disagree)
Domain driven design imo is a very worthwhile topic to study.
personally I would advocate for studying the basics of functional programming. Simply because it's such a radically different approach to programming than what OOP sets forward, and because it's actually relatively popular, both in frontend and backend. But if you're unfamiliar with it, it'll take your mind for quite the spin before you'll fully grok it.
You'll learn how to write more honest code (yes it's actually a term lol) as well as more robust code with less syntactic noise.
i not talk for uni courses. i ask for being qualified .net developer for a junior until my school ends.
Okay. Do you mean a pure backend dev or fullstack?
i like react, but i dont know which way is better, back-end or fullstack
im currently working in my internship company. i do little back-end tasks
Personally I'll always prefer choosing specialization over generalization. As a fullstack junior dev you're only really expected to have superficial knowledge over both domains. As a specialist you'll be expected to work on a bit deeper topics, but not much more so.
i think the same
Regardless - I'd do something like this:
1. .NET 8.0
2. Web API
3. Unit tests
4. SQL
5. Entity Framework
6. Functional programming concepts
7. Domain driven design
That sets you up for backend success with the most common technologies and concepts for a junior
I put FP above DDD, but they're really interchangeable when it comes to priority imo.
I put architecture nowhere, because when you begin your first job you'll just inherit whatever architecture they're using.
And you should not pick a solo-gig for your first job as a fresh graduate, so you won't have a need to bring your own opinion on architecture.
Keep in mind this is for pure backend
if you're going fullstack, then you'll need to fit in frontend there too
Topics like concurrency, retries etc are stuff you are not expected to know, and whoever hired you will have someone more senior to mentor you through these concepts. They're not easy, and have high risk if done wrong.
How is your knowledge on the more low level stuff, bits & bytes etc?
i can say 8/10
Great, then you don't need to study that.
What I suspect you will find in your first job, is that it is academically... boring. There's very little exciting stuff for most entry level jobs
Instead, it becomes much more about best practises and writing maintainable code. Not every developer at every company cares about this (which you'll inevitably notice), but it's such a pleasant experience when working with someone who does.
do you think my tech stack and knowledge are good for my current studentship and situation? i have been in .net since 1 year
.NET has a wide selection of implementations. Are you talking about
.NET Framework
? .NET Core
? .NET
? They're three different implementations. Of those three, you should be learning .NET
version 8.0
.
Framework is legacy, it's for ancient software. .NET Core is moderately old, and nothing new should be written in it. But you'll encounter a lot of code in .net core. On the plus side, it's easy to upgrade from core to .net.Core
by the way i think we talk about the same
latest version 🙂
Okay. If you're only using
.NET Core
, you're a little bit behind. 2-3 years or so.
This is a bit significant as .NET
has a lot of performance upgrades and newer features
.NET
is not the same as .NET Core
name ambiguity a bit there
No, they're different things.
This is very confusing. I remember when I switched from java to .net. This confused the fk out of me haha
really xd
So a rough timeline:
Early on, Microsoft made
.Net Framework
as their development framework for Windows ecosystems. No support for unix at this time.
Years later they wanted in on the platform-agnostic action, and they made .Net Core
which tried to bridge this gap.
Not too many years ago they simplified the name, and released .NET
as a continuation of the platform-agnostic work.
This means that when you say .NET Core
, I must assume you're referring to the period in time before .NET
, which means you're several years behind the most modern developments in .NET and C#.
https://learn.microsoft.com/en-us/dotnet/core/whats-new/dotnet-8/overview
This is the one you want to be learning.so for you, are my tech stack and knowledge enough for my current situation? or i need to make learning faster?
You're ahead of the curve as it stands currently 🙂 Your situation is good
just make sure you spend some time on the newest
.NET
alright then
thanks so much for everything