How To Become a Software Developer the Right Way

Поділитися
Вставка
  • Опубліковано 3 лип 2024
  • How do I get started as a developer? What steps do I need to take to get a job? How do I learn what I need to quickly? What are my options? These are the questions we will answer in today's episode of Dev Questions.
    Website: www.iamtimcorey.com/
    Patreon: / iamtimcorey
    Ask Your Question: suggestions.iamtimcorey.com/
    Sign Up to Get More Great Developer Content in Your Inbox: signup.iamtimcorey.com/

КОМЕНТАРІ • 27

  • @iasonmax3473
    @iasonmax3473 29 днів тому +17

    I appreciate your perspective a lot, but I think something that is missed by many people starting now is base knowledge: algorithmic structures, operating systems, how the web works, and so on. I started learning a year ago and just got my first job. Focusing on a language definitely helped me get here faster (your channel is a great resource, thank you), but now that I have familiarized myself with C#, I find that I gain more from reading theory. Maybe a video for things that people should look into while they start to learn their first languge would be nc. Again thank you for the free content your channel is an amazing resource

    • @IAmTimCorey
      @IAmTimCorey  28 днів тому +5

      I definitely think people should learn those things, and I'll be doing a course on some of them soon. The key is WHEN they learn them. Algorithmic structures tend to be best learned inline, where you learn them as you use them rather than pulling them out into a training course on their own. But yes, people should definitely go deeper as they learn, learning the theory once they understand how it applies to the real world.

  • @andergarcia1115
    @andergarcia1115 14 годин тому

    Thank you, Master, for your guidance, advice, and insights. We truly appreciate your contributions

  • @iamkgraman
    @iamkgraman 29 днів тому +2

    Always I love Tim Corey's Dev Questions❤❤❤❤

  • @stevenorton8442
    @stevenorton8442 28 днів тому +2

    I'm a software developer and went the full 4 yr CS degree path. In my previous life I was in a hospital chemistry lab and I went back to school. I often think what it would be like to merge the two fields together for me. Don't forget to think along those lines and look for computer related avenues in your current profession if you're out in the workforce now. You could take boot camps or get a certificate and transfer positions. Because the company I work for does not even look at you unless you have a degree coming in off the street. I can't speak for other companies, but I think it's still common.

    • @IAmTimCorey
      @IAmTimCorey  28 днів тому +1

      The number of organizations that look for a degree is shrinking, but they are still a significant group. I agree about finding software development work in the field you are currently in if possible. You already have a foot in the door.

    • @wrakowic
      @wrakowic 27 днів тому +2

      Agreed, people that can combine SW development and non-SW domain knowledge are rare and very well paid.

    • @ebenbrittz535
      @ebenbrittz535 27 днів тому

      ​@@wrakowicsame with me, certified accountant learning c# to solve problems we are experiencing with our accounting package at work.

  • @rikudouensof
    @rikudouensof 29 днів тому +2

    Thanks for the video

  • @chrisb5958
    @chrisb5958 29 днів тому +2

    I've been building applications in C# for 17 years, some where full stack projects. As a self-taught developer, I am sure I did not follow this recommended path, so this advice still applies to me today to some degree. What in your training material do you recommend for someone with my level of experience?

    • @IAmTimCorey
      @IAmTimCorey  28 днів тому +1

      It depends. If you feel like you have gaps in your education, going back to the beginning is a wise idea. It may feel introductory at first, but you will probably find things that you did not know at every level. If you feel like your education is solid but not complete, I would recommend putting together a list of the things that you are missing and then completing that training. The biggest one, though, will be to practice a LOT. Give yourself hands-on experience building things.
      If you have the DevPass, the C# Mastercourse will fill in your gaps. The other courses will add the missing elements.

  • @cemkaya4448
    @cemkaya4448 23 дні тому

    Thanks for the video, Tim!
    I would like to get your opinion about what I confuse.
    There are different languages for web development. When a beginner needs to choose a language for learning programming, how should he decide which language it should be? Is it job opportunities or the company where he wants to work or what exactly makes a language is more advantage than the others when someone starts to learn?

    • @IAmTimCorey
      @IAmTimCorey  23 дні тому

      This might help: ua-cam.com/video/LBFI-8CtKOQ/v-deo.htmlsi=tQTytLPgEqr8Htq2
      Basically, you should choose the language that you enjoy working in that is also represented well in the job market in your area (unless you are ok moving). It doesn't need to be the most popular language, but if there are only two jobs in your area in that language, it might not be a great choice.

  • @jeffsherman9638
    @jeffsherman9638 25 днів тому

    Hello Tim, just curious, other than C#, what is YOUR second favorite language in your opinion?

    • @IAmTimCorey
      @IAmTimCorey  24 дні тому

      I really like working with JavaScript, honestly.

  • @382u3uuej
    @382u3uuej 29 днів тому +1

    16:20 It is not true what he says around this time about formal education being out of date because it takes about 3 years to start writing code, and I think it's intentional to sell his course, formal education like a college doesn't teach you to write code from day 1, first of all you are learning algebra (which is basically comparison operators, the AND, OR, NOT, greater than, true and false, etc.), then you learn mathematical analysis 1 and 2, you also learn the basics of programming (what are if else statements, the while loop, the for loop, data types, etc.), you also learn hardware (which is something you don't learn in online courses), there is a lot of things that you are learning from day 1 and eventually you get to write some code, and once you start to write code it's much easier because of all the math, the basic coding that you did to learn the basics and the general knowledge of how computers work. For example, he said that he wrote code professionally in 20 languages, how is that possible? Because the basics of how programming languages work and how computers work is very similar, and that's what you learn in college in the first years.
    Trying to present this as if this was not good because it will be out of date is just not true, math doesn't become obsolete, nor does the basics of how programming languages work, or the different types of working methods such as agile.

    • @IAmTimCorey
      @IAmTimCorey  28 днів тому +7

      First, you asked how it was possible I developed in 20+ languages. Did you realize I was not formally trained? I didn't have a college education when I did that. I got it later so I had the piece of paper. So that negates your argument a bit.
      Second, math isn't really that important for most development jobs. Most business jobs are basically "write a CRUD application" when you boil them down. And if you are saying that understanding algebra will help you understand development, in the US you get that training in high school.
      Third, it doesn't matter if you write code on day one or the last year of your college experience (although the latter is probably a really bad thing). It isn't about what you learned becoming outdated, it is that the training you receive will be outdated. In larger organizations, it takes on average three years to get a course approved and into the classroom. Smaller organizations sometimes do it in half the time. That means that at best, the training that is in the classroom for the very first time is 18 months out of date. They depend on books to train the students. Think of how long a book takes to write, edit, and publish. Even that is a long process. That means they aren't training on modern code even for the first time they teach it, let alone the 5th time or the 10th time.
      But even that could be ok since the fundamentals of development can be taught in a way that were foundational tools that could be built upon. However, that's not typically the case. Instead, the students are taught theory through application. Meaning, they learn things like algorithms and data structures using code, but that code isn't something they actually can then use somewhere. It is code that shows the theory. Here's a good test for anything they learn in college: Do they know how to actually use that in a real-world application? I've had lots of college graduates who knew what a linked list was, but I've yet to see one implement one successfully in C#. The same is true with almost every bit of their education. They bounce between languages, they take essentially "overview" classes where they learn theory, and they rarely build more than one application with any significance. The focus is on tests, which again are theoretical rather than real-world.
      Fourth, you mentioned that math doesn't become obsolete and neither does working methods such as agile. I've addressed that math isn't really a big help in software development. When is the last time you applied anything other than the math you learned in high school (basic computation, algebra, geometry, etc.)? As for Agile, that is a constantly changing topic and one that every company does differently.
      At the end of the day, I'm not saying that a college education is useless. What I am saying is that it is often not nearly valuable enough for what you get. You spend four years and tens, if not hundreds of thousands of dollars to get an education that gives you a decent foundation in theory and concepts. Yes, you will have worked with a few languages, but that's actually a bad thing in my view. You haven't dived deep into any language. You've learned the surface. Knowing how to write basic applications in multiple languages isn't a career skill. It has actually trained people to bounce around and call it progress. But even with the negatives, you do get something out of college. The question is, is it worth it?
      I've got a calculator on my website that works you through the comparison, but I'll give you a brief summary. Let's say you go to Texas A&M for your Computer Science degree. I'm in-state, so that will cost "only" $30,000/year including room and board. That means you will need to spend $120,000 and four years to get my degree in computer science. You go to get a job and employers want 3-5 years experience, so you don't qualify for most positions. You take an internship or starter job at a lower pay to get your foot in the door. After 3-5 years, you will have the experience you need to do the job and the opportunities will open up. At that point, employers are no longer looking at your degree except maybe as a checkmark on a requirements list (and the number that do that is dropping). So what value did your degree offer you? It didn't get you in the door of most companies, and once you have experience you don't need the degree anymore. Was that worth four years and $120,000?
      Compare that with self-taught/bootcamp/training courses. You spend between $0 and $15,000 and take up to one year to complete the training. You are then applying for jobs. Most jobs won't take you because you don't have 3-5 years experience, so you get a starter job/internship to get started. You spend 3-5 years getting work experience, and then you have the experience to show other employers. You don't necessarily get the jobs that require a degree, although a LOT of software development jobs now say "or equivalent work experience". You complete all of this before you would have graduated from college and you spent over $100,000 less even if you went the most expensive route.
      Just to make sure this point doesn't seem theoretical or impractical, this is the route I took. This is the route a number of my friends and colleagues took. And this is the route one of my sons took (he is currently a lead developer at age 21).
      As a final note, I know you don't know me but I never push anything because it will net me more sales. That would hurt people and it would be bad for the community. I don't do that. What I do is because I want to help developers. That's why I turn the funding from my paid courses into paying for the free content I do. I offer over 700 videos here on UA-cam, including multiple full courses, because I want everyone to have a great education in C#, not just those who can afford it. That means I give the best advice I can, not advice focused on making me more money.

    • @adrianspikes6454
      @adrianspikes6454 26 днів тому

      Not to nit-pick but ur first statement is NOT true. Tim did not say it would be obsolete. Listening is not the same as comprehension but what's odd is that you did not listen to a word he actually said 💯

    • @torrvic1156
      @torrvic1156 19 днів тому

      @@IAmTimCoreysounds very inspiring! Now I really feel that I can make it.

  • @torrvic1156
    @torrvic1156 19 днів тому

    Thank you so much for all of your precious advices Mr. Corey! I genuinely enjoy every video of yours and even if UA-cam will be banned in my area I will always remember you as a man who taught me C#.

    • @IAmTimCorey
      @IAmTimCorey  17 днів тому +1

      Where is UA-cam going to be banned?

    • @torrvic1156
      @torrvic1156 17 днів тому

      @@IAmTimCorey russia…It is even scary to write this because of a fear that they can identify man who write the messages in UA-cam. It is a bloody dictatorship waging a criminal war and even for a slight critique they are throwing people to jail. They are scared of UA-cam because it tells a lot of truth regards to war in Ukraine. Also it pisses them off that they can’t control it. Allegedly they are going to do it in September.

    • @IAmTimCorey
      @IAmTimCorey  16 днів тому +1

      That's a real bummer. Best of luck. I hope you can find a way to be in a better situation.

    • @torrvic1156
      @torrvic1156 16 днів тому

      @@IAmTimCorey thank you so much Mr. Corey! One of the main reasons of why I am learning programming is because I want to move to a better country.