Seriously? Another top languages blog? You may be right, but I’ll try to give you some insight as to why I made the selection that I did.
I often find myself a step behind every one else. I’m the one reading the Top Languages of the year blogs as the year is coming to an end. NOT THISTIME! This blog contains my recommendations for languages to learn before 2019, just to get that upper edge a bit early 😉 (unless you’re reading this in 2019).
As some of you know, I’ve created videos like A Day in the Life of a (Future) Software Engineer. This obviously implies that I’m not currently a software engineer. It’s an obvious statement to say that not everyone is meant to be a software developer or engineer. At one point, I thought that was me. Let’s talk about why, until now, I never really saw myself being a software engineer. Even now, I’m not a software engineer. Maybe these are the same reasons you’re not, too.
1. I Didn’t Want to be a Software Engineer
Software development and computer science is overwhelming. As I began learning to code, I always had the same problem – Issues would come up and I’d have no idea how to solve them. This was great for my problem solving skills, but it often left me feeling frustrated or defeated.
This was before going to school and getting a Bachelor’s in Computer Science. This was just me doing it for fun in high school and some professionally.
Job postings are annoying because every job requires 3 years of experience and you can’t get that experience without having a job. What do!?
If you’re reading this post, I’m assuming you’re a complete newbie. You may have done some coding for fun or for school, but now you want to take it to the next level. This blog will share with you the steps I took to get my first software development job.
1. Own the Tech Interview
I’m jumping to the meat of the article because your long-term career success is likely going to come down to your performance on a (relatively) short interview. If you do all of the other things in this article perfectly, but do not have what it takes to impress a hiring manager, you will likely fail at becoming a software developer or software engineer.
I can’t code. I’ve been developing for years and still have no idea what I’m doing. John, on the other hand, is like a coding master. Thanks a lot for making me look bad, John. Thanks a lot!
Maybe this is what goes though your mind at work.
We’ve all experienced this feeling. It’s known as the imposter syndrome. The imposter syndrome plagues those around the world. I’ve seen this syndrome a lot in the tech industry. The wealth of knowledge available around software development is crazy. Somehow we’re expected to know everything, or at least that’s how we feel.
I Can’t Code. I’m not Smart Enough.
This feeling overwhelms the developer. This leads to anxiety. We put on a face that shows we know what we are doing, but ultimately our truth will be exposed to the masses. We fear that the day might come… the day when we’re humiliated in front of others regarding our lack of true knowledge.
What exactly do I mean by future software engineer? No, I’m not from the future. I am currently working towards becoming a software engineer. I originally developed software as a contractor before I took a role in marketing. Now I’m trying to get back to my roots and get a software engineering position. Not just any development position, though. I want one that is challenging and one that will give me reputable experience.
Because of this, I am preparing for the types of interviews given at the big name software companies (Google, Microsoft, Facebook, Amazon, IBM, Netflix, etc). I documented and recorded my experience for an entire day. The video is at the end.
Because I work full time, I only get so much time to work on my development skills. This is challenging because I feel it takes me a very long time to get anywhere, but it’s good because it’s teaching me not to waste time.
At this point I assume you’ve read Part 1 and Part 2. You’re fairly well acquainted with what coding is and why we do it. You even understand the basics of design and delivery. Now, we’re going talk about branching in software, source control, deployments, and more.
At this point, you’ve probably already read part 1. This means that you know the basics of what coding is. A better question is: Do you know how to get a job? Knowledge is only part of the battle in the software development industry. I’ve been using this great website called Pramp. Pramp is a website where you get paired with other people and do mock interviews. Technical interviews are very challenging. Pramp gives you what you need to succeed. On top of that, companies are using Pramp to find competent individuals for real jobs. People have used Pramp to get positions at Facebook, Microsoft, Twitter, and more! I promise you won’t be disappointed, so check Pramp out!
Can We Automate That?
One of the big reasons companies develop software is for automation. Automation is enabling something to happen automatically without you having to dork with it. With software, we can write an application that has code that will execute the same thing over and over again. This means that something that used to be a complex process can be made very simple using software.
So you want to learn about coding, huh? Maybe you’re looking at becoming a software developer or software engineer. This is the blog for you! I’m hoping to give you the 10,000 foot view of coding.
Be sure to check out the sponsor of this post, Pramp, where you can get the best preparation for technical interviews.
Code is the basis for every software application. An application is anything that runs on a computer. This includes any websites you visit, games you play, apps you use, etc. Software is now embedded in almost everything, such as all modern day vehicles.
So far we’ve learned about the very basic concepts of Db2, but now I want to dive in a bit and work with tables. Some of the material in blog may take a few more blogs to fully understand, but that is okay. The goal is to get you started. Later we will come back and learn all the details.
We will be using SQL (Structured Query Language) to communicate to our database. DSM (Data Server Manager) is the UI (user interface) that we can use to work with our database, but we should do as much as we can with SQL. Why use code when there is a user interface? I’m glad you asked.
Before building a database for yourself or a corporation, you need to understand a bit about database structure.
We are going to go in some depth on how to design a database, which deals with structuring your database the best way possible. However, I thought it would be appropriate to give an overview of the Db2 structure and start using the database right away.
Once we have the fundamentals down, we are going to then go back to database design to learn the details. This will allow us to more concretely discuss database design because we’ve already had some experience with the fundamentals.