My .NET Developer Roadmap for 2023

Поділитися
Вставка
  • Опубліковано 27 сер 2024
  • Give the roadmap a star on GitHub: github.com/Elf...
    Check out my courses at dometrain.com
    Hello everybody I'm Nick and in this video I will show you my brand new roadmap for .NET developers for 2023. This roadmap includes everything that a .NET and C# developer should know to excel in their career in 2023.
    Workshops: bit.ly/nickwor...
    Don't forget to comment, like and subscribe :)
    Social Media:
    Follow me on GitHub: bit.ly/ChapsasG...
    Follow me on Twitter: bit.ly/ChapsasT...
    Connect on LinkedIn: bit.ly/ChapsasL...
    Keep coding merch: keepcoding.shop
    #csharp #dotnet

КОМЕНТАРІ • 303

  • @terencetcf
    @terencetcf Рік тому +288

    Extra things to consider like: learn how to use the IDE (vs studio, code) or command line efficiently, api client (postman, rest client, curl etc), db client.

    • @Jannism1234567
      @Jannism1234567 Рік тому +10

      Definitly an important point in my eyes, as it really can boost the productivity of a developer :)

    • @stefano_schmidt
      @stefano_schmidt Рік тому +21

      vs studio can ruin your first impression of C#😁
      (i really know few people that picked another language as their first because of a visual studio)
      Glad we got Rider

    • @NickSteffen
      @NickSteffen Рік тому +9

      True, fun tip. Find a laptop with an awful touchpad and spend a couple days coding on it without a mouse. You will learn the shortcuts and hot keys fast.

    • @terencetcf
      @terencetcf Рік тому +1

      @@stefano_schmidt sometime you really have to experience a not so good one in order to appreciate the good stuffs 😅

    • @terencetcf
      @terencetcf Рік тому +2

      @@NickSteffen or move the mouse to the unnatural side yours

  • @SpaceShot
    @SpaceShot Рік тому +71

    I love how this starts with the basics and moves up to being a complete standard of everything that can help your team build, deploy, and maintain complete back end products. This isn't just a checklist of what someone new to coding should know, it's handy for senior and principal developers. I'm keeping this handy.

  • @joshbarghest7058
    @joshbarghest7058 Рік тому +65

    I'm honestly shocked as someone entering their second decade in this biz that a lot of junior devs lack sql knowledge. It's super useful in so many situations.

    • @iamnoob7593
      @iamnoob7593 Рік тому +5

      Yes , SQL/RDBMS/Postgres is very important.

    • @prasannadahal5512
      @prasannadahal5512 3 місяці тому

      SQL is so underrated as a programming language

  • @sourcejosh
    @sourcejosh Рік тому +20

    This is a fantastic roadmap. Im embarrassed to say after two decades experience doing windows and web apps, theres a few things on this list I had never heard of. Thanks for clueing me in on what I need to add to my tool belt next.

  • @swharden
    @swharden Рік тому +143

    Consider making this colorblind accessible. 1 in 12 males is colorblind and has difficulty distinguishing green from yellow. Using different stroke widths could help differentiate boxes on your chart without depending on color perception. Alternately, Google around for colorblind accessible color palettes. Great video though, and thanks for sharing this updated roadmap!

    • @nickchapsas
      @nickchapsas  Рік тому +118

      Great point, sorry for that. It's something I take for granted but I shouldn't. I will take that into account next time.

    • @swharden
      @swharden Рік тому

      No worries! As a colorblind person I make this comment all the time ;) I just opened an issue on the GitHub and I am happy to help work toward making this roadmap accessible!

  • @MrFallout86
    @MrFallout86 Рік тому +75

    I've been devving for the past 15 years, and I must say that is a very neat and comprehensive list. Well done man.
    One important thing missing in my opinion is Domain Driven Design and it's correlation with microservices.
    One very important, frequently overlooked lesson is, learning the principals well enough, to know when it's ok to break them.

  • @Palladin007
    @Palladin007 Рік тому +22

    I think the Liskov substitution principle is quite important and not only good to know.
    I have seen a few times where a derivation is significantly different from what the base class specifies just to make it "work" and that is the beginning of the end.
    Of course this is also related to the other principles that a base class or interface (interface segregation principle) must be written in such a way that you are not forced to make such detours.

    • @colcoomagnumar
      @colcoomagnumar Рік тому

      Are you able to give a specific example of this?
      I always struggle with the reasoning behind this principle... I don't think I've knowingly violated this principle, but I'm not an amazing developer where all my class hierarchies are perfect. Ie, I've never thrown an exception on a method because the class isn't supposed to do it (like the classic "fly" on a duck class).

  • @TheJohndward01
    @TheJohndward01 Рік тому +10

    This is so helpful, especially since you've compacted the roadmap. Thank you!!! Also, it would be great if you made some sub-categories for "Understand how the web works" bc it's alot of info in and of itself.

  • @pilotboba
    @pilotboba Рік тому +14

    Couple of things I would add:
    To the API section an Orange Carter.
    To the ORMs section FluentMigrations (especially if you are using Dapper since EF has in-built migrations)
    If you aren't doing strictly APIs I think learning the Post/Redirect/Get pattern is a good idea too.
    One category that I think it good to know is the discriminated union options (emulators???) like OneOf or ErrorOr and/or Korikovs CSharpFunctionalExtensionsLibrary that has Maybe and Result implementations.

  • @joshparsons5795
    @joshparsons5795 Рік тому +5

    Absolutely agree with this. Chat GPT was a huge bonus but you really need to give it the right context and understand what you're asking it for in order to get a good answer!

    • @trevorscrews5372
      @trevorscrews5372 Рік тому +1

      And, you also need enough knowledge to identify when it is confidently wrong. I like it for brainstorming, but I can't trust it for real implementations yet.

  • @chaschannel8253
    @chaschannel8253 Рік тому +9

    Great video! Not sure I 100% agree with Stored Procedures and Triggers leading to bad code. These are tools that have their place and in the hands of users who know how to use them in the correct scenario/context they can be quite powerful and effective.

    • @nickchapsas
      @nickchapsas  Рік тому +5

      The problem is that there is no correct scenario because there is always a better alternative

    • @yunietpiloto4425
      @yunietpiloto4425 Рік тому +5

      @@nickchapsas Im also curious about this. What’s the problem of abstracting your application from the raw sql code and putting it in the sql server instead of hard coding it in your c# code with dapper, while at the same time you get a few perks of using stored procedures like security, precompilation, optimization and maintainability.
      I’m legit curious about your posture on stored procedures being a “bad alternative” by nature.

    • @user-bx2er2zx5u
      @user-bx2er2zx5u Рік тому

      @@nickchapsas Nick , make video about this topic . I want to hear your opinion.

    • @nicolaseckell9691
      @nicolaseckell9691 Рік тому +1

      The problem about not using store procedures is that relational databases tend to increase on complexity (more joins, more columns). Thus, store procedures perform better than ORMs on these scenarios. This may not be your case, but enterprise projects and more over legacy projects tend to have SP for retrieving data quickly

    • @QaudaffyAzmi
      @QaudaffyAzmi 9 місяців тому

      Agreed. One of our complex query process in our enterprise app require thousands line of code in a single SP. We've tried other options and SP is the better choice!@@nicolaseckell9691

  • @CreativeB34ST
    @CreativeB34ST Рік тому +1

    Some thing I would do differently:
    - .NET CLI: "Good to know" in stead of "Must know" (I've never used this, except in CI pipelines)
    - Version Control: add "Azure DevOps Repositories" as "Good to know".
    - EFC: Lazy loading, eager loading, explicit loading as "Good to know"
    - Logging: add Nlog as "Good to know"
    - Task scheduling: Quartz seems to be another popular one
    - Perhaps add a section for general things like DDD and CQRS.
    - Could also maybe add a section for "project management" with tools like Trello and Azure Boards.
    - Maybe even a section about documentation with conventions and tools for building proper wikis.

  • @peltiervideos
    @peltiervideos Рік тому +20

    The only comment that caught me off guard was not using Stored Procedures. I would love to hear your thoughts on that in a video. Obviously, every use case can be different but how do you manage the performance of large databases without them?

    • @nickchapsas
      @nickchapsas  Рік тому +46

      They are an absolute no-no in every company I worked for that wasn't dealing with legacy software. Maybe worth a video?

    • @APlatypus40
      @APlatypus40 Рік тому +8

      ​@@nickchapsas performancewise it's still (if done right) the best solution and allow fine tuning like no driver does. But it requires SQL knowledge and understanding of execution plan to make it right.

    • @diligencehumility6971
      @diligencehumility6971 Рік тому +1

      In real world companies, you ever only see stored procedures in old old old projects, and they are a pain in the but. You are much better off learning ORM's like Dapper and EntityFramework, or whatever ORM is good/popular for your language

    • @brianedwards30
      @brianedwards30 Рік тому +12

      I've experienced more pain trying to use EF than I have with stored procs to the point that I hate EF with a passion that burns hotter than a thousand suns. I've only worked for companies that used stored procs though so I would love an explanation.

    • @OblivionOth
      @OblivionOth Рік тому +7

      The company I work for uses store procs to not put the raw SQL CRUD Operation in the code base. We have a rule that no logic is allowed in store procs unless there are massive preformance benefits. I would love to hear your thoughts on this topic.

  • @tipsybroom2
    @tipsybroom2 Рік тому +11

    Hi Nick, I'm a Developer for about 20 Years. In my last interviews as a Senior Developer there were questions about Stored Procedures, GraphQL, gRPC, Dependency Injection, Response Caching, MediatR. There are so many companies that use a lot of niche products and have legacy code. Especially the last company said my knowledge was not deep and wide enough. o__O Feel like an idiot.

    • @Nemcoification
      @Nemcoification Рік тому +2

      Don't. You're never going to learn everything and every company you will work at will use a ton of tech you have no or very little experience with. If there are things that pop up everywhere, focus on that and make sure you have some sort of learning plan. Otherwise just make sure you have some level of understanding of what certain tech is and why it could be used. Like I've never used GraphQL and gRPC professionally, but I have pretty good understanding of what it is and how it can be used. It's not difficult to build that knowledge with just few hours of reading blogs, etc. Don't let 'em get in your head :)

    • @vadim6684
      @vadim6684 Рік тому +3

      Survivorship bias and Peters effect could take place here.
      You should not take into considerations opinions coming from someone's arrogant egoism.
      May be your experience makes you a Frontend heavy developer, so you don't need to go deep in backend, because you prefer to focus on things in which you are an expert.
      If you don't know some technology deep it is not a problem. How you do relate with that is what actually important.
      I would aware what was the problem with the interviewer if he was a team-lead and allowed an offensive behavior to people he saw in the first time - it would not become better in future.
      Other sample is when you worked as developer in companies where responsibility segregation was at high level. Then you are allowed not to know how to configure CI/CD servers or even pipelines, or how to configure a specific message queue server, because you did not do it, you designed solutions and wrote code within your scope.
      I hope I delivered this message clearly. Sorry, if my grammar suffers, thanks 😄

  • @cdnkarasu
    @cdnkarasu Рік тому +5

    I would include Azure Functions under Task Scheduling, not sure what AWS equivalent is but likely should be there as well.

  • @AlFasGD
    @AlFasGD Рік тому +8

    In my workplace, we heavily rely on stored procedures for the system that we're interacting with, in an Oracle database. However, it was built as early as 2008, so it could simply be legacy code that we unfortunately don't have the time to get away from. Though I will say that using stored procedures for some tasks might not be too terrible, because the advantage is that you can deploy bugfixes without deploying the entire project. Would like to get some input from other systems and projects, in case this one is completely out of touch with the modern reality.

    • @yunietpiloto4425
      @yunietpiloto4425 Рік тому +2

      I work in a startup and we use stored procedures when we have really complex queries that require either lots of joins, or access to other databases through linked servers connections, etc. We decided to abstract that from the actual C# code and rely on them for that task. I know some devs hate on them but I guess it’s like everything in life that has its own pros and cons

    • @AlFasGD
      @AlFasGD Рік тому +1

      That's what I would imagine stored procedures still find grounds for. Outside the database, you lose a lot of performance because of the constant querying, whereas stored procedures let you be free to perform the queries you need knowing that it'll be highly performant.

    • @vasimhanna-salem659
      @vasimhanna-salem659 Рік тому +3

      Same here; we use stored procedures becuase of the sheer number of left and inner joins for so many tables; they preform better; I just don't see how not using them would make things better; not to mention being able to tweak queries and deploy them right a way

    • @nicolaseckell9691
      @nicolaseckell9691 Рік тому +1

      I was about to declare the same as people here. Store procedures are quite important in enterprise environments cuz data tables are long enough to be done like that

  • @havendv
    @havendv Рік тому +4

    I would add NSwag to the library's SDK API as a means of automatically generating REST client code based on the OpenAPI specification

  • @italianmeetschina3001
    @italianmeetschina3001 Рік тому +1

    Hi Nick! I have just seen that you started as a passionate L2 player. That's exactly what brought me to IT too! What an incredible journey, sending love from Italy, keep up the great work!!

  • @JohnOliverAtHome
    @JohnOliverAtHome Рік тому +2

    Very suprised by your stored procedures comment.
    There is not a single library (EF, NHibernate etc) that can write as performant Sql syntax as a Sql developer, especially for complex queries. To implement a large complex object can require 10+ table joins. When one understands the underlying structure of the tables (read indexes and foreign keys), it is quite simple to create sub-queries to filter data first, then using the outer query to retrieve additional non-filtering data. This allows the query optimiser to use multiple indexes on a table.
    I've just come off a new project where the first decision we made was to use stored procedures as they allowed us to tune Sql performance.

  • @jamesmussett
    @jamesmussett Рік тому +14

    I appreciate your channel doesn't really focus on Frontend (Blazor, Winforms, WPF, MAUI etc...), but do you have any plans on covering those technologies in the future?

  • @alexandruchirita5780
    @alexandruchirita5780 Рік тому +6

    What I would add is the evolution of concepts like this:
    Don't repeat yourself (DRY) -> Write everything twice (WET) -> Avoid hasty abstactions (AHA)
    And I would add also maybe some Object Oriented Programming concepts, maybe Test driven development (TDD), Domain driven design (DDD) or even some functional programming concepts to understand purity of a function and no side effects while writing code.

    • @damnboy1472
      @damnboy1472 Рік тому

      Test driven development - definitely just a thing to read once, there is a good book about it, but writing tests before coding itself is nasty. If it's a startup you won't have time for this. Better write code and test it after.

  • @hems7431
    @hems7431 Рік тому +1

    Great video. Some extra items I recommend like machine specifications, apim/apigee, open api spec, source code generator, circuit breaker pattern with Polly

  • @ayanansuman
    @ayanansuman Рік тому +1

    I would say thanks to you for your tremendous effort and in flawless explanation. Love your way of doing code and taking approach. ❤

  • @darrellgamble00
    @darrellgamble00 Рік тому +1

    Great video by the way. As an ex Microsoft employee I know I am showing my bias but you did not mention Azure Active Directory which fits many more use cases in the Authentication and Authorization space than Microsoft Identity. I am guessing I will have to get caught up on more of your videos to understand why you appear to avoid much of that space as I myself will be spreading my wings a bit more. Congrats on your channel's upward mobility. You are a powerhouse and I look forward to seeing where you take your brand.

  • @user-gq6dq3ld7m
    @user-gq6dq3ld7m 8 місяців тому

    Perfect! I am a mid .NET developer and this list, I believe, will help me conquer the next level.

  • @TolstyakFree
    @TolstyakFree Рік тому +1

    It's definitely nice roadmap, tell you as a developer with 15 years of experience.

  • @jorgeiferreira
    @jorgeiferreira Рік тому

    This is an outstanding Roadmap. I am a C# developer, in many years I have interactions with most of the topic mentioned on this roadmap.

  • @abhaybindal4512
    @abhaybindal4512 7 місяців тому

    Also please make a video on what topics in C# we have to learn and practice as a developer.
    Like what topics really gonna help us to improve my coding standards and efficiency of coding & building logic faster. 🙏🙏

  • @andrewshearer4965
    @andrewshearer4965 6 місяців тому

    Hi Nick - looking forward to seeing an updated roadmap for 2024 if you're planning one soon? Be good to see some security-focused aspects included such as Github Advanced security (codeql), Sonar, or Zap etc make their way into your list :)

  • @dcuccia
    @dcuccia Рік тому +7

    Late to the conversation, but I might suggest one thing missing: Python. C# is a grown-up, professional language and my favorite for development. But at the rate the industry is adding ML and IoT, I'm finding it essential to be able to work between C# and Python. Over and over in data science applications, I need to learn what has been prototyped/scripted in Python and then "engineer" it in C#. And with MicroPython, there's now a growing need for interop skills at the CPU/microprocessor boundary. I'm finding I can translate more and more of my C# structures and code to MicroPython and have shared definitions/contracts/etc.

  • @RENAUDADAM
    @RENAUDADAM Рік тому +10

    Hey Nick! Awesome video. I would love to know more about why you think Stored Procedures lead to bad code and bad practices.

    • @nickchapsas
      @nickchapsas  Рік тому +28

      Maybe a good idea for a video?

    • @RENAUDADAM
      @RENAUDADAM Рік тому +1

      @@nickchapsas I think so!

    • @reikooters
      @reikooters Рік тому +2

      Having your SQL queries in stored procedures is good for performance because the database server will cache query plans and statistics for the query. But in my opinion I don't think they're worth it and that's because of version control and code maintainability. When the queries are in your code, you can track changes like you would any other code change in your git repository. Also, if the schema changes on some table (e.g. a column renamed) and you need to go and update everywhere the table is used, it's easier to just ctrl+f in your code than try to query the database to find and update the stored procedures. Also, I think it's easier in general for development when making changes to a system or building new features as the modified queries are in your application running on your computer rather than in the database, unless I suppose if you were to have your own copy of the database on your machine. Lastly, there is software out there that will help you do version control on the database itself, but never tried any as they look expensive, and rolling your own doesn't work very well (I've tried).
      Edit: One more thought I had - when you're actually reading code especially if written by someone else, you'll have to go to the database and look at the stored procedure to know "what does that do/how does it work" when you see a stored procedure being executed.

    • @nickchapsas
      @nickchapsas  Рік тому

      SQL queries inside or outside stored procs generate identical execution plans and they are cached in the same way.

    • @reikooters
      @reikooters Рік тому +3

      @@nickchapsas My understanding was that plans and statistics were stored/kept in the database for stored procedures, while adhoc queries are only cached in a pool and will be eventually removed from the pool after enough different queries being run - but I'm happy to be wrong. I will have to research that. In any case I'm not using them.

  • @mslucass
    @mslucass Рік тому +1

    I hope you will do some Entity Framework video's in the future. And some Blazor. Or in a course form. I'm not a real developer but do it next to several other things. And I'm learning a ton from all video's and the courses, of which I have done them all.

  • @sergiik2168
    @sergiik2168 Рік тому

    I'd like to add Autofac to Dependency Injection section, because it one of the most popular DI containers in the .NET world

  • @ebektasiadis
    @ebektasiadis 5 місяців тому

    Hello Nick! Thank you for your really insightful video. Currently trying to relocate to Swiss where people mostly use .NET / Java Spring Boot! 🙏

  • @DiomedesDominguez
    @DiomedesDominguez Рік тому

    as a matter of just sharing my experience, I've been using Bing since the end of 2009 and so far I still preferred instead of Google: too much ads or not the answer I was looking for.

  • @Dimon24021993
    @Dimon24021993 Рік тому +7

    Hi, Nick. Could you change the colors for the Must know and Good know branches? Because color-blind people and their varieties could not recognize differences. I have 3 more people with the same problems in my circle of friends. And we can't (or it is difficult to) determine its color.
    If you decide to add some symbol for each - it will be extra solution)
    Thanks for your videos and researches :)

  • @Mazzphysics
    @Mazzphysics Рік тому +1

    Very nice video. Nice to see some alternatives to look into, never heard of Refit or ReSharp before. Always used Flurl which I think is amazing already.

    • @Mazzphysics
      @Mazzphysics Рік тому +1

      Also personally would remove Stored Procedures from the list :D. I have rewritten SO many stored procedures into Dapper sql queries it's unthinkable. So much easier to handle. :)

  • @forytube4998
    @forytube4998 Рік тому +1

    C# is powerful when doing oo, without follow strictly Liskov substitution, easily to abuse oo inheritance.

  • @noelfrancisco5778
    @noelfrancisco5778 Рік тому

    Thank you so much for providing this awesome roadmap! :)

  • @robertlenders8755
    @robertlenders8755 6 місяців тому

    Seems like a fine list to be a web-focused C# developer but as a general .NET developer I'd expect some knowledge of IL and CLR internals. Also knowledge of another .NET language like F# or one of the .NET dynamic languages like IronPython.

  • @AndyNeko
    @AndyNeko Рік тому

    Thank you so much for showing me what to learn! Thank you!

  • @sanjevsaalaivazan7786
    @sanjevsaalaivazan7786 Рік тому +1

    Thanks!

  • @kushzei
    @kushzei Рік тому +2

    Did you skip "Streaming" Category? I was really interested in that one!

  • @vincentotieno9197
    @vincentotieno9197 Рік тому +1

    Hi, I am an experienced developer and I continue to gain more knowledge through your videos. Kindly add your courses to Udemy. My employer will pay for me to take them.

  • @tryagain6148
    @tryagain6148 Рік тому +1

    For somebody that tells me that the "no no stored procedures" and chooses "postgres" as being a better engine makes me wonder based on what the recommendation was done...

  • @peterassanfulkwame852
    @peterassanfulkwame852 Рік тому

    Wow! Thanks for this detailed info 😊… wish this is a PDF

  • @cdarrigo
    @cdarrigo Рік тому +1

    Please do a video on configureawait!

  • @kaisersolo76
    @kaisersolo76 Рік тому

    Thats a great list. Its highlighted a few areas to focus on. cheers

  • @jorikajorika
    @jorikajorika Рік тому

    Hey nick! excellent video! Thanks man as always you're true pro! Your videos have only one flaw and I wish u will be able to make it up. A hair in the soup thing is you not using Visual Studio:))) And I wonder where are u from? I wasn't able to determine your accent...

  • @Sergio_Loureiro
    @Sergio_Loureiro 10 місяців тому

    I am surprised you didn't say anything about micro-services, mapping and Angular. The last is front-end, but here job postings are requiring it very much.

  • @harran9962
    @harran9962 Рік тому

    Would be cool to add marks on side that say JR Devs pos here, then senior here. That way to give idea of what level needs what. Great video tho, thx

  • @Taurh
    @Taurh Рік тому +2

    Any suggestions on projects to do along with this roadmap? I've already worked with some dotnet projects at work but would love to have some to practice of my own :3

    • @fernandohcortez
      @fernandohcortez Рік тому +1

      I was also wondering about that. Doing a project to put in practice most of it would be great.

  • @florianvo7616
    @florianvo7616 8 місяців тому +1

    The part “understanding the web” should be further specified, how much networking knowledge do I need as a web developer?
    Understanding basic of https communication is enough or should I understand all 7 layers of OSI properly and every common network protocol?! Would I have to be able to write and read raw network packages?! “Understanding web” is too broad

  • @lordmetzgermeister
    @lordmetzgermeister Рік тому +1

    An important one if someone wants to become a *professional* developer - learn how to TALK ABOUT IT.
    If you know how to do stuff but can't put it into words, not many will be able to properly appreciate your abilities and won't employ you.

  • @alexandernava9275
    @alexandernava9275 Рік тому

    Love this list, but I would have put AI as must know now. I don't mean trying to make it wriite 100+ lines, but how to use it to write small snippets of code that you don't know as well. It is more powerful than a lot of beginer devs I have known over the years. So if you are a beginer it will make you so much better.

  • @Altmighty
    @Altmighty 9 місяців тому

    Hey, thanks for the overall roadmap.
    Can you do like "minimum" requirements in order to apply for a jr job as a .net dev ? the "absolute must have"

  • @preneshreeperumal7379
    @preneshreeperumal7379 Рік тому

    Awesome list thank you.

  • @phreakadelle
    @phreakadelle Рік тому +1

    Nice roadmap! I have been watching a lot of your videos lately. Great content! :) One question regarding NoSQL databases: Did you try out RavenDB at some point?

    • @nickchapsas
      @nickchapsas  Рік тому

      I have. Just not good enough for the systems I'm building

    • @simonbirrer916
      @simonbirrer916 Рік тому +4

      @@nickchapsas That would be interesting topic for a video, I can't image which requirements you couldn't make work and IMHO it allows the most architectural freedom with (filtered) replication, ETLs, Subscriptions and even adds attachments, counters and time series support . In addition it has the best testing story of all DBs as a .NET dev 😉

    • @GlebWritesCode
      @GlebWritesCode Рік тому

      ​@@nickchapsascurious - can you share more? Is it DB features, operation side or something else?

  • @dudelkt
    @dudelkt Рік тому

    Awesome, Nick!

  • @lordicemaniac
    @lordicemaniac Рік тому

    loved your Flurl pronanciation :D

  • @chandrashekarnaik892
    @chandrashekarnaik892 11 місяців тому

    Good info thank you Nick

  • @Gabriel-tp8tj
    @Gabriel-tp8tj Рік тому

    Damm i wish to have a roadmap like this for PHP and Java.. good job !!!

  • @Freakhealer
    @Freakhealer Рік тому

    You could do a video on how you start a project from clr and version control etc, once asked for a simple project demo, this wouldn't be for the project itself, more like "welcome to my crib" i have this use that yada yada, a run down from start to finish using clr since you say is important and wtv else you do

  • @NhatNguyen-yz5tm
    @NhatNguyen-yz5tm Рік тому

    Thank you, useful for me!

  • @samiaduigu9179
    @samiaduigu9179 Рік тому +1

    Why no Autofac in DI sub-tree?

  • @F.Castle
    @F.Castle Рік тому +1

    Just wondering, at which point of the roadmap would you try to apply for jobs? After completing everything?

    • @juanlima4277
      @juanlima4277 Рік тому

      No way hahaha you will spend 3 years to learn everything. I think you need learn Git, WEBAPI, API, Database. You should know how get a data on the database and send to the frontend, i think its the minimium to star looking for a job.

    • @F.Castle
      @F.Castle Рік тому

      @@juanlima4277 Thank you lol i was getting overwhelm here

  • @jeffsteyn7174
    @jeffsteyn7174 Рік тому

    Developers not using chatgtp or copilot are shooting themselves in the foot. Chatgpt is a MUST KNOW. The guys who are using it is going to outperform you with ease. I haven't been coding for 5 years. I just started up again. I guarantee you I will finish a project faster than everyone commenting even the man in this video. From finding solutions to errors to simple stuff like creating a model from a json file.
    You should also look into vector dbs.

  • @shamsuddinwantmurikar7533
    @shamsuddinwantmurikar7533 Рік тому +1

    I know API development, but I would like to expertise onthis based on your roadmap. What shold be the best approach for the same. I am finiding myself lost when I start learning from some videos on different platforms and ending up learning very basics and not reaching anywhere where I can b confident to attend interviews to change my Profile.

  • @da3dsoul
    @da3dsoul Рік тому

    I haven't heard of half of this stuff. I guess I've got some stuff to look up. Thanks, man! PS. I'm so used to American spelling in tech that when I saw Authorisation, I was like huh....oh duh

  • @GameDeveloperTR
    @GameDeveloperTR Рік тому

    I am currently working as a junior game developer, but I did not like the game industry. That's why I found you while doing research without going too far from C#. My question is, are we going to learn everything on this list in order? Is there a tutorial with everything on this list under one roof? What should we do at the same time that we start learning what's on this list? Thanks.

  • @user-xs7iv9cl3v
    @user-xs7iv9cl3v Рік тому

    Hey Nick, Thank you for your awesome content. Could you share your thoughts on Raven Db. Do you think is it a powerful database?

  • @user-jx2vy4uf5h
    @user-jx2vy4uf5h Рік тому

    I would like to disagree with Stored Procedures. In most cases you don't need them.
    I Agree with 'it is not necessary' on this roadmap. Just keep in mind that it is important technique on edgecases (like Reflections in Coding). I would not say it leads to bet code - it's more like an optmization for performance.
    As always there are important usecases. Let's say in a (common) scenario where you have an exisrting database (may be from an existing application, like ERP os sth. like that) an you need to freaquently need to perferm queries against it. For performance reasons you defintly want to use stored precedures.
    They are better optimized and are executed much directly without the need to compiled.

  • @ramious76pj
    @ramious76pj Рік тому

    FYI the Bing ChatGPT won't provide full code samples. It will only give example snippets now. If you ask for a full sample it says how its the responsibility of the developer to know how to code. So if you want a larger code sample you may want to stick with ChatGPT.

  • @abhishekjadhav9289
    @abhishekjadhav9289 6 місяців тому

    Hi Nick, Thank you for the sharing your advise. I have a question on this. As you said Stored Procedures are not must have as they are not considered to be followed as good practices, however, you mentioned Dapper ORM is a must have. But I guess Dapper uses sql stored procedures or queries to do crud operations. Shall we use Dapper ? Or Dapper has another alternative to using SQL Stored Procedures ?

  • @tarunpahilajani
    @tarunpahilajani Рік тому

    @nickchapsas please can you include the resources where to learn these all skills from that much more helpful

  • @boot-strapper
    @boot-strapper Рік тому +2

    8 years in industry at fortune 100s and I have never seen any place ever use sql server

    • @Sara-qn8bn
      @Sara-qn8bn Рік тому

      What do they use

    • @boot-strapper
      @boot-strapper Рік тому +1

      @@Sara-qn8bn MySQL, SQLite, postgresql, etc…

  • @Najumsoft
    @Najumsoft Рік тому +1

    Dear which tool you have used for this tree like diagram , please share the name of that ? , your kind input will be highly appreciated , thanks in advance

  • @andrewkanieski2162
    @andrewkanieski2162 Рік тому

    Not sure I'd say stored procedures are 'bad design' .. they have there use cases ... triggers are often very badly abused.. but stored procs are very commonly used and are pretty standard SQL tools.

  • @scalitics
    @scalitics Рік тому

    If we need to learn all of this before to get a Job, it will takes me more than a life.

  • @amallkrishna
    @amallkrishna Рік тому

    You might already know this but I just found out that the following syntax will be permitted for primary constructors(ends with semicolon):
    class Person(string Name, int Age);
    And it still does not create any properties but instead gives a warning :(

    • @nickchapsas
      @nickchapsas  Рік тому +1

      Yeah I saw that. I will revisit this topic with my thoughts

  • @godfather7695
    @godfather7695 Рік тому

    thank you very much!!!

  • @vasimhanna-salem659
    @vasimhanna-salem659 Рік тому

    I have to disagree about the stored procedures; for very heavy data driven application they are the better approach

  • @jaiderariza1292
    @jaiderariza1292 Рік тому

    Maybe we should add some FrontEnd and Mobile framework to the roadmap.

  • @DeepakSharma-dv8rw
    @DeepakSharma-dv8rw Рік тому

    Great roadmap! I have been watching a lot of your videos lately. Could you please let me know what software you used to create the Roadmap? Thanks

    • @curtmantle7486
      @curtmantle7486 Рік тому

      I wondered the same and investigated the GitHub repo. It seems to be a Mind Map created in MindMeister.

  • @mrbrit6746
    @mrbrit6746 Рік тому

    How do people remember all of this?!? Just looking at this list alone has me worried haha - I'm only on my first week of learning c# as my first introduction to programming, thought I'd look up a roadmap and now I'm scared😅

  • @alexpaskal8345
    @alexpaskal8345 Рік тому

    very good roadmap, but i'd add Docker there. imho it becomes more and more useful even for juniors

  • @xanhxanh5097
    @xanhxanh5097 Рік тому

    Hey Nick I think some basic azure stuff like Azure AD would be good to know

  • @DIEGOFELIPEHOYOS
    @DIEGOFELIPEHOYOS Рік тому

    Just curious why you mention mongodb as not cloud first? with Atlas is super powerful and cost effective!

  • @mohammadrafi8103
    @mohammadrafi8103 Рік тому +3

    Do we have any course which covers all this..??

  • @min11benja
    @min11benja Рік тому

    Thank you, what would you recommend for the front end? A frameworks like Vue, Angular, or React? Something else? Blazor?

  • @novaploca2080
    @novaploca2080 Рік тому +1

    Cool thanks

  • @andreybiryulin7207
    @andreybiryulin7207 Рік тому

    NLog is quite comparable to Serilog in popularity, so it is probably a must too

    • @nickchapsas
      @nickchapsas  Рік тому

      I've never seen it used in anything but legacy projects in the past 8 years

  • @ideamanideaman8631
    @ideamanideaman8631 Рік тому

    Maybe design patterns can be added under the solid title. sorry if I miss it

  • @pasha5760
    @pasha5760 10 місяців тому +1

    its for middle or senior? i work few years, but know and use just half of that. So i middle or still junior?
    Thank you that shared your mind)

  • @dreamdancer8212
    @dreamdancer8212 Рік тому

    OK, the goal is set. Now all I need is enough lifetime to learn all of that stuff. How hard can it possibly be . . . .

  • @pablocom
    @pablocom Рік тому

    Should this be updated with ChatGPT in the "learn how to search for solutions"? or maybe generative Al deserves it's own section? 😅

  • @ralphmaasgmailcom
    @ralphmaasgmailcom Рік тому +1

    Hi Nick what is the name of the tool you used to create this tree?

  • @darrellgamble00
    @darrellgamble00 Рік тому

    I must have missed a video where you stated why Liskov's sub principle has fallen out of favor. How do you protect from common generics issues without it?

  • @KhauTek
    @KhauTek Рік тому

    hello, i was just wondering what do you prefer rather than stored procedures. i also dont use them but i have heard when dealing with millions of requests then stored procedures should be the way to go. could you help me understand that a little bit more. thanks for everything. have a great day

  • @awright18
    @awright18 Рік тому +1

    Overall I like the top to bottom most to least important stuff. The only think I think should be removed is SOLID because very few people understand it and those that do can't explain it (Same with DRY). People have been poorly explaining SOLID for over a decade, and it just needs to go away or be replaced with something that simpler to understand and is not really needed anywhere near the beginning of your journey.

    • @JohnDoe4321
      @JohnDoe4321 Рік тому +6

      I explained DRY once. Sorry you weren't there. I'm not gonna repeat it 😁

    • @awright18
      @awright18 Рік тому

      @@JohnDoe4321 I just think in general there is a superficial understanding of it. All context of the original intent is missing.