What do I ACTUALLY do as a Software Developer?

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hey there what's going on I'm Andy I'm a self-taught software developer and in this video I'm going to fill you in on what is I do as a software developer the reason I want to do this is because there's a lot of people getting into the field who have some misconceptions let's say about what software developers do some people think that we're riding unicorns around typing on computers just like creating applications from scratch or that we're at a ping-pong table playing ping pong and occasionally writing code and just having like beer at work and that's not been my experience either one of those so I just want to give a clarification about what it actually is from my perspective and so hopefully you can get a better sense of what it actually entails now if you're new this channel I mean Easter quits and I help people start a career in software development so if you're looking to do a or get started in a career that you love that you're passionate about that you could doing creative and fulfilling work then I highly recommend subscribe below and hang the bell icon to get notifications anytime I put out a new video so without any further ado let's get into what it is exactly I do and I boil it down to five things that I've seen I'm that our most consistent I do on sort of a daily weekly monthly basis and that covers mostly everything so number one is I'm building a new feature number two is I'm fixing bugs number three is I'm doing continued learning or research number four is and I'm communicating with someone or a group of people and then lastly I'm fixing a production issue or an emergency in the system so let's go through each one of those so number one is I'm building a new feature and this is like the best part of software development right so you take your favorite social media application right like as an example of building a new feature let's say Twitter wanted to add a new feature in their app that you could poke someone right like member the Facebook poke I don't know that's still around but say Twitter wants you to be able to poke other users well they've got to obviously build a new feature and as a software developer in my experience of building features in some of the applications that I worked on that is a pretty intensive process because I'm a full-stack developer meaning if I have to build a new feature I'm tasked with figuring out all the way from the database side meaning I have to figure out when new tables I have to write what relationship those tables are gonna have to other tables down to the server side code how is the the site code need to change is there any existing code that I need to understand for the poke to be added to that code and you have to add API endpoints to retrieve that data or create data and then I also have to go into the user interface or a client-side or front-end and have to figure out how to write the code to make the nice pretty notification pop up when the the poke happens or a button to poke someone else right so the process of building a new feature is very intensive and it's a lot of fun at smaller companies like I've worked at because I'm doing everything I don't just focus on front-end or back-end I have to do everything and this is so much fun because you get to understand that how the current code base works you get to potentially refactor code to make sure that it works so that way you can implement the new code you have it's a blast it's a lot of fun but it's not the only thing you're going to be doing because applications aren't constantly changing a lot of applications out there are pretty static meaning they're not really adding a lot of new features this can be very rare or it can be ongoing if the app is growing or if the app is constantly changing and they're adding new things and so that really leads into the second thing which is I fix bugs right so any application of any size is gonna have bugs of some sort um even while tested code is going to have a certain amount of bugs and you know there's always a list of bugs right and then there's certain priorities on those bugs and so as a developer you're going to have to go through there through the list of bugs at times or you're gonna be assigned certain bugs that you have to fix and bugs are not straightforward like bugs donkey a bug is a bug like a bug could be as simple as like there's one line of code that needs to be changed there could be another bug that they can't even figure out if it is an actual bug meaning they came figure out how to reliably reproduce that bug so you have to do a lot of research and just setting up the system in your local environment or even production trying to figure out how this bug if it if it actually exists and in what condition it is so it can be like a lot of freaking work like just trying to figure out like one simple bug and it's not the sexiest of things I'll be totally honest with you but it is a part of life I think the upside of working with bugs or fixing bugs is that it can be impetus to refactor code so if I find a bug and I'm like oh man this code is poorly written I can then take the time out to refactor the code and the refactoring what I could do I basically restructure it reorganize it or rewrite it to make it more maintainable more readable so that way somebody later on can go oh my god this code is so elegant or just to make the system a little more efficient so fixing bugs is a significant part of your life as a software developer now the next thing is constantly or continued research continued development continue learning as a software developer right because the as if you guys should know if you're getting into this field or if you're even into it like the pace of learning is so it's just constant right the new things are coming out and frameworks you have to even revisit old principles that you've learned maybe computer science principles that you already knew before but you have sort of forgotten haven't been implementing so part of my job is either you know doing research because I'm building a new feature or fixing a bug or you know I just had to learn some new framework or just I want to learn some new technology that I've heard a lot about and you know it could just be because hey like I've got nothing else to do it I would small learn some new cool stuff but you know continue research continue learning is a big part of what I do or it definitely plays a significant significant amount of time to spend doing it the fourth thing is just I'll be in some sort of communication meaning I'll either be in a meeting right so that maybe there's a developer meeting or maybe there's different departments are meeting by to be a part of it and you know just like in any big company meetings are not always productive so you're gonna be stuck in some meetings sometimes where it's like do I really need to be here I could be writing code right now so there's that I could be communicating with someone like a project manager or a business analyst trying to figure out ok I've got this work item I'm not clear maybe on something or I need to questioning why they're doing something right you also have you could be talking to another developer maybe you're asking them questions you're doubting whether the code you just wrote is that efficient or maybe you're helping out a more junior developer or maybe you're just talking smack who knows what it could be but a lot of your job will be in some form of communication you're not just saying they're coding away all the time and the fifth thing is fixing production issues and a production issue is not a bug a bug is something that can be fixed in a few days and a few weeks we don't really care a production issue is something that's affecting the system a bug you could say I guess affecting the system that is causing major problems either the system-wide either is causing causing outage of some sort or it's just causing a really important user some problem and they wanted to be fixed ASAP right and the way I think about this by the way is that like again I'm at a smaller company so when something goes wrong I'm not just a software developer who's like hey man I'm off it's like everyone has to drop what they're doing and figure out what's what the problem is number one number two is how to fix it and number three is we have to redeploy the application now deploying an application just to kind of give you a sense it sounds pretty simple like just you know deploy the application and for some applications that's really easy you just press a button some test run and then it deploys other applications are much more complicated they're much more clunky and it requires like the system that go out and so it's not this easy process where you just deploy like you have to go through so much so fixing production issues definitely played a role as a software developer don't get me wrong this wasn't something that was constant but it's definitely played a role in some of the work that I do so I really hope that gives you a better sense of what life is been like for me as a software developer so you can maybe get some better expectations you're not thinking that you know everything is just about building new features there's definitely some non-sexy parts some non exciting parts but overall like it's a great to be a software developer and I highly recommend it if you're trying to get into the field so thank you so much for watching i highly recommend liking the video before you leave and also if you're interested in getting more of my content i have a free facebook group you can join where i give you even more content things that i think will be very helpful i also have live Q&A events so if you want to join that group go to a nice turquoise com forward slash group and I will see you there that's really all I got for now thank you so much for watching and as always peace out guys take care and I'll talk to you later [Music]
Info
Channel: Andy Sterkowitz
Views: 283,372
Rating: undefined out of 5
Keywords: what do software developers do, what do programmers do, self-taught programmer, self taught software developer, andy sterkowitz, andrew sterkowitz, what do software developers do at work, software development, software developer, programmer, computer programmer
Id: leOX1ehXHNM
Channel Id: undefined
Length: 8min 35sec (515 seconds)
Published: Sun Apr 21 2019
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.