💻 I have been following your project tutorial and curriculum like this in RU-vid and I actually got a job after 3 months. I was lucky though to have a right path, a right language and a right mindset and this prove that you can definitely get a job as self-taught swe.
I believe this video is pure brilliance and EXACTLY right. I would add a few things. Be aware of your own learning style and if possible connect with people and resources that are compatible with your learning style. Once you know your area of interest use the languages and tools that people in that area use. Also, you WILL need a basic understanding of C and/or C++. So many OS's, languages, apps are written in C++. The features of many languages arise from the features inherent to C++, or are a reaction to things in C++(i.e. Rustlang). Understanding memory management, memory leaks, pointers, iteration, recursion, arrays, sorting etc will help you better understand your favorite languages (i.e python, Java, rust, etc.)
A skillset under appreciated by Data Scientists is system design. Any DS developing a production model will inevitably bump into the costs/considerations of a large system.. you have to be familiar with the basics if you want the early contributions to positive. Unfortunately ive seen a handful of negative examples - people create unnecessary dependencies, creating components which hog resources.. stuff like that.
@@codingcrashkurse6429 the problem is that architects and infrastructure people do not know the behavior of your system. This is what I see also with most developers - they hardly know anything about infrastructure, OSes and security. This is where I as a generalist always find my place. As I know a lot about operating systems, quiet enough of infra and cloud infra and a good deal about security and secure code. And it always amazes me that developers don’t think about the basics of writing efficient code. As soon as uit to outside of the CPU you need to be really savvy and aware about OS and hardware. When you go outside of your system you need to be damn aware of the infrastructure and security.
Very good curriculum. I did about the same and it worked for me. I would also recommend picking up a copy of a good Introductory text on Computer Science that goes easy on the maths but gives a broad overview of the whole field and explains lots of concepts and ties them together - like those by Brookshear and Brylow or by Dale and Lewis - and reading it, nice and slow :) It is almost impossible to have too much command line skills. And after six months or so, definitely start reading up on Networking (TCP/IP, OSI), Cloud Computing & Virtualisation, and Security fundamentals. Along with Machine Learning and Data Science, you'll encouter these topics almost everywhere at some level or another.
Dutch Ray here, I agree. Networking and actually digital logic is so important. And most developers know Jack shit about it. And that’s where the problems arise - I’ve solved so many performance issues or bugs related to networking code. Just because the developer neither understood the operating system or the network architecture. One of the most common mistakes send(socket, buffer, 8192) and assuming that the 8K or 1K buffer gets send and most of the time that’s the case especially testing it on a local network. Over the Internet or slow wan links you may find if cannot send all the bytes and it returns the number actually send. So you need to subtract that number from the bytes to send and shift the pointer over in your buffer and send the remaining bytes. Even at commercial software at ANWB for reserving plane tickets I’d seen this bug.
Tim I‘m never commenting actually. This is my first comment for you. I‘m very proud of you! You are helping people becoming even better engineers only because of you 💪
Perhaps he’s the exception of the rule. He’s one of the few advise givers on YT that actually has creds and skills. The majority are posers. And I see that in my dev job too. The GenZ and millenials are terrible coders and problem solvers. You have to take them by the hand - and of course there’s the exception to the rule but the majority is really overpaid for their skills or lack there off. When it gets tough most just sit down and wait for someone else to pick it up. And sloppy! And slow! The latter I can live with because speed comes with experience my 35 years of coding and electronics experience they don’t have (most aren’t even 35). But sloppy I cannot stand. And I think it’s not them it’s their upbringing (me generations fault) and terrible education of the last 40 years.
Thanks! I'm learning currently. I have a python class for my degree probably in about 6 months and am trying to learn as much as I can about it before I even take the class since my college only does 5 week classes and that doesn't seem nearly long enough to actually understand python.
I actually learned Python first in about a month and then started solving problems on LeetCode, just because I had fun doing it. Then I learned Data Structures and Algorithms. I've been programming for about 6 months now and I have become interested in becoming employed as a software engineer, so I just started learning Django and some frontend development fundamentals.. I feel like I'm somewhat in a reversed path from what others commonly do, so hopefully it turns out ok...
Hey Tim I just started watching your videos you’re a big inspiration for me. Just started my masters in computer science and just started this RU-vid channel. So my goal is that when I graduate grad school, my RU-vid channel is thriving and my programming skills are thriving and I can make money from both. You’ve basically achieved some of the goals I’m working towards rn so so I respect your channel and work ethic. Keep up the great work
Hey Tim is there a way I could add you on social media? I’m realizing I need to be working as hard as you worked to build your RU-vid and your programming career. I feel like I could learn a lot from your mindset
Hey Tim, the algorithm is crazy, this is exactly my self taught path curriculum that i gave myself, im 60% through it and its been 10 months so far, im tired bro lol, seriously, im tired 😢 but its impossible for me to quit now ive done to much and sacrificed to much, im hoping to get the other 40% done in 3-4 months then im applying for jobs, tbh, i feel like im gonna know alot more than a junior developer, so hopefully that will guarantee me ANY JOB lol, ill edit this message when i get my first offer. Im aiming for backend with python, snd ive already learned databases design and learning sql now also, then api's etc 😢😢😢😢😢😢😢😢😢😢
The problem is I'm interested in everything but start on doing nothing. There's so much in the plate and idk i can't decide to choose what really I'm passionate about. It leads me nowhere and I'm wasting my time
That was very informative, and I discovered that I am around the 2-3 months mark, which is exercising, especially on OOP. Thanks for providing me with a progression bar.
In the beginning, I don't think that most people would start with a perfect curriculum but eventually, when they move further into programming they will fall into different rabbit holes and learn on the go. So don't worry I you often fail just keep your motivation and practice it will make you better. Thanks for the great and informative content tim.
I think it’s good that you sort of differentiate between being a programmer (scripted) and computer scientist. Although I do firmly believe that programmers that don’t know system and hardware design are inferior and make crappy software because they don’t know how to present something to the system that makes sense. I had a massive argument with a Python code that didn’t understand why I used a logical “and 1” to find ought and even pairs. So he read the function name and understood what it was supposed to do and refactored it using the I -% 2 == 0. Bear in mind he’s the tech lead of my customer! Suddenly that task ground to a hold - and who do they call? So saw it had been changed and I asked why he did that. “Readability” - most relative answer because a systems developer finds reading a logical and just as readable. So I asked him what a modulo does? He didn’t even really know what the actual maths were. So I explained that dividing is something a computer doesn’t like. It likes to add and subtract. Dividing is basically repeated subtraction. And Python is an interpreter who needs to execute a division because it doesn’t know that in this case any compiler (did a video on that) actually changes it to a logical and 1 because it’s the fastest way to achieve the same thing. Because in binary that first bit riffles in and off each time when it’s odd or even. So change it back and it will be fast again because you iterate over 600 million record you need to separate out in the two pairs.
goodness me. to be honest this is the first time i'm really paying attention to your video. all i can say is from today you are my mentor. I will want to pay for your program in algoexpert
Just Subscribed today. After watching a dozen TWT videos, I realized I'm wishing I watched some of these sooner. Which, you know, Sub and bell are about. Silly me.
Thanks for advising, I being someone from mech/chem industry, and want to enter in IT/Comp industry, helps alot to understand and follow guided path. BTW, is that Dyson v10 bladeless fan?
imma go in a robotic college for a master degree but i always like to learn alone by myself so side to the college i will study from ytb (already started) cuz i have big project about changing the world
I think 1 month to get comfortable writing code is a bit fast. Well atleast for me, time frame exposed to a language overtime maybe a few months beats trying to condense that exposure into a smaller time frame. I would say 3 but thats just me lol
I'm self-taught and literally just landed my 1st SWE job on Tuesday the 16th with JPMorgan Chase. I had no degrees or any college, no prior experience just decided November 2021 that I was going to teach myself to code. Saw the job posting in June and said worst they will do is say No! I would like to formally THANK YOU Tim for I found your channel in the process and utilized the crap out of it 🤜🤛 I've always been a quick learner however I'm finding out that I did so it relatively fast. The opportunity is a true blessing and once again extend my gratitude to you bud 🙏
@@im_an_alien196 oh no I didn't care if it said degree. If I felt as if I could do the job then I applied! 90% declined me, i had 2 or 3 that responded with further steps however I reached out on Tuesday to update them. LinkedIn is where I found it, but it was a post about signing up for job alerts from Chase in March or April so I did. June came around and I got the email that application was open. Rest is now history
Hi Tim , I am interested in computer graphics programming Can you make a video about CGP's curriculum or the journey to learn this field correctly without distribution
Tech With Tim looks a bit like an egg. To me that makes him such a good teacher because the fact that he looks like an egg makes me feel at ease while studying. Thank you so much for all your tutorials!
Why would you go into DSA so late? like understanding that stuff has been 4x harder than writing loops in python, but has made understanding how and more importantly WHY I'm writing my code 5x easier. The learning curve is a brick wall, but once you're over it, everything becomes so much easier, at least imo.
Excellent! I found it interesting that you suggest almost backwards of the CS degree program I tried back in the day 🤔. They did all the internal memory stuff and math up front, and only wanted to tack on actual coding at the very end! Thus, I do not have a CS degree 😆! I think your system would be much more engaging and useful.
The thing is that that’s the basis and when you have that down, everything on top makes sense. But there’s a fundamental difference in CS and being a programmer. Most programmers these days hardly know anything related to even their interpreter.
OOP is pretty easy to understand. It mostly consist of creating a parent class with the main methods then creating a child class that inherits those methods. It helps not have to rewrite code multiple times
@@RobertRoman what youre describing is java era oop that was denounced by the ceo of oop when it came out and has been left out of almost all modern languages with oop. if you want to write extensible code, interfaces and composition will do just fine if not better
the oop-first approach popularized by lastgen languages is objectively a horrible way to write code. people don't actually think exclusively in terms of objects: our mental model uses concepts of data, processes, and objects (data and processes packed together) equally. languages like java and c# are completely detached from this reality and this is why people writing those languages end up with making tons and tons of super abstract and utterly useless counterintuitive type hierarchies just to solve simple problems. that said, oop isn't entirely bad. languages like python, go, and rust do oop pretty nicely imo. it's interesting to see how all these languages have an oo element but have completely different idioms and practices
No serious employer will hire you as a "self-taught guy". That's just a sales pitch of the online "school" industry. What people are looking for in an employee is proven knowledge and experience. That's why your professors in college are testing you and why you are required to write a thesis. And how long does it take to become a solid programmer? A dozen years, at least. That's not different than in any other profession. One year is not even "rookie". Four year college is rookie and even that's a head scratcher for the hiring manager. He or she would prefer someone with ten years of industry experience.
Thanks for the great video .. i already learned (python, C, C++ including oop, fe web development) but i can't find a place to practice them or build something with them .!!. can u please suggest something .
Hey guys need your guidance... today's my second day in programming journey, just selected c (coz fresher loads of time) to begin with...once thorough with fundamentals then c++ & DSA... eventually going web development, projects, further advance stuff/language. But there's tons of resources available, can you'll share most efficient and to the point resources/tutorials for complete beginner. Any and every genuine suggestion is welcome 🤗
Start with The Odin Project for web dev, it’s probably one of the best course out there. It will provide you a structured learning guide. Hope it will help
get into problem solving asap. you dont actually have to do contests and such, just making a habit of solving one or two problems a day will do. you'll eventually get introduced to all the common algos and data structures if you follow these communities. if you dont need a job asap, stick to developing as a programmer first and then maybe try webdev
Great videos! I want to sign up for your programming expert course, but there is no way to contact you guys with my questions about the course you offer. I am only provided with FAQs and no way to type a message. And, when I want to try to get around the FAQs to ask a question, it tells me to Login. I don't see a way to contact you guys. I want to know if your course will teach me to create games in Python and not just learn programming? Thanks.
Hi Tim, i have a queation and i will be grateful if you answer it, personal projects can have the same importance as projects that are develop inside a company?. I am an integration developer that works with APIConnect and Datapower, that´s why i do not code as much as i would like and therefore i work in my personal projects in my free time
Hi Tim, I got this Q: What program career would give me the highest SALARY per year ?? JAVA, PYTHON, Cyber Security, Blockchain Programming, Software Engineer or Web Developer ??!
Anyone who has experience after learning the necessary skills etc is it possible to get hired as backend dev without a college degree. I do not enjoy front end dev I prefer backend and building logic and databases etc but I also want to make sure I'm setting myself up to get entry level jobs
Is it possible to get hired? Not by a quality employer whose name will look good on your resume. For that you need at least four years of college (and you must have written a thesis). Even better would be PhD in CS. Will some small Mom and Pop show that needs a website pay you a couple hundred bucks? Maybe, if you are lucky. But is that really what you want to do with your life? Seriously? Now, we can have a discussion about why it's irrational for countries like the US to charge for college, but that's politics that won't change for a generation or longer, so that's not going to help you. Take a deep breath, get somebody to pay your education for you and do the four hard years (8-12 if you want a PhD). Millions have done it before you and you can, too. Don't believe for a moment that you are special. You aren't. At most you are a high performing fool for believing that life will give you something for free that others have to pay for. You ain't that rich and pretty, kid.
Hey bro , and hello from Ukraine 🇺🇦 , i just want to tell you if i have 24 years can I still start learning programming and then get a job? won't it be too late?
Mrs Laura A. Cohen is the right person to start trading cryptocurrency with.. she knows her way around the crypto world..She has been helping me increase my investment every day for over months..
I wish you had made this video 1 year ago when I was first starting to learn Python. It would have been so helpful. But anyway now I am taking a computer science introductory course on edx cs50x and I am learning C. Hope this course will fix some gaps that I have with the core of python and that it will improve my programming logic skills.
My teacher (The youtuber I watched for learning) taught C programming in a 15 hour video in my mother tongue. It was easier to understand. His channel is CodeWithHarry. He has an English version of the same video. It is about 11 hours long. Do check it out. I had a fun time with it. He also provides his hand written notes and gives practice problems many of which he solves, but usually I tried to solve them first and was able to do that.
I wouldn't recommend this video to a beginner. This is because why would one learn C/C++ after 7 months? Either one starts with them or will never learn them. I wouldn't go through Architecture and Gates thing. People like me really get bored and frustrated by the "console". I can not go without creating something dynamic and "colorful" for a month or two! I would rather suggest Andy Sterkowitz etc. despite how good Tech With Tim is for other things.
This timeline is totally unrealistic and way too broad -- will give beginners a false sense that good engineering experience can be developed in a year. They'll ultimately fail to meet expectations and flood forums with "Am I not cut out for this?" "Why am I dumb?". You can literally spend 1 year just learning basic DS&A and still only walk away with the basics (in fact, most CS students have just this -- and they devote 3-4 hrs/day). Same with multithreading, which is just impossible if you've only just 2 months ago learned the basics of the programming language syntax. You can probably write some toy hello world multithreaded code but you'd be better off spending time learning how to design bigger single-threaded applications. Spend 2 years learning a programming language, datastructures and algorithms, and writing small-medium sized applications (that vary in purpose: console, GUI, web, database). Spend 6 mo -12 doing leetcode (by which time, you should have good command of the language to express ideas pretty fluently) and working on portfolio projects. In year 3-4, you should have enough experience with basic syntax and language concepts to learn advanced topics like multithreading (no, there's nothing wrong with previewing the topic early on, but it's a mistake to spend too much time with it). Tradesmen spend 2-3 years in school, 3-5 years as an apprentice, and work for decades before they're regarded as professionals.
Hello, I wanted to know your opinion, do you think is it good idea to learn html, css and JS simultaneously? Because one day I want to get a job in IT and I need to start somewhere 😅
Whatever you want to do, learn one language at a time, then move on to other languages after having good command, otherwise you're gonna learn nothing.
Contrary to others might say, I encourage you to learn CSS, HTML and JS simultaneously if you wan to specialize n Web Development, js is meant to work along side with CSS and HTML although most programmers don't consider HTML and CSS as "programming languages". Other than that it's not advisable to learn multiple languages at the same time.