Becoming a Software Developer in 2021 (The Truth)
Hey, this is Alex Vitkin from BusinessMentor.com. Are you thinking of becoming a software developer? Let's find out if it's the right thing for you and how to achieve this goal. So let's grab a pen and paper. And let's talk about the next steps.
You Need To Put In The Work
This isn't some don't-effort, super-fast process to get you where you want to be, you will have to put in the work. So if you're looking for some get-rich-quick stuff, this video isn't it. There is no quick or super-fast, no-effort process to make this work. You will have to put in the effort. So if you're looking to get good at a skill that's super high in demand, and you're looking to get started freelancing or offering development services as a business owner, then definitely watch this video.
That being said, this isn't some super-technical video or super-advanced software, developer video or anything like that. This is for people that are looking to get started freelancing or want to build an agency or even potentially a small job. So I will be focusing primarily on the aspects of freelancing that allow you to get started, get sales and scale.
Before we dive in, click here to subscribe to my youtube channel and then click on the bell notification button to get more developer and contract-getting tutorials.
First, I'll give you the safe traditional process to become a software developer and get paid for it. Then we can discuss an alternative method that is my preferred method.
What Does A Software Developer Do?
So, what does a software developer do? And which skills does this person have? A software developer or engineer figures out users’ needs, designs, tests and develops software to meet those needs. They test and upgrade applications. They help businesses automate through tools that they build. They scale applications and systems and figure out how the pieces work together.
They Know Several Programming Languages
Software Developers usually know several programming languages depending on the project requirements. They learn programming languages like C#, Java, Swift, C++, and other software development languages. They usually build software for a specific operating system.
They Are Also Familiar With CS Fundamentals
They're also familiar with fundamental concepts of computer science. These include:
- Computer programming
- Computer organization
- Data structure
- And algorithms (along with the aforementioned programming languages, computer hardware and networking)
Since software developers need to know computer science to some extent, here are the following types of math that are necessary for you to learn if you want to be a top-tier software developer:
- Binary math
- College algebra,
- And discrete math
I've linked to the resources on how to learn these programming languages and other skills at the end of this article. So you don't necessarily need to go to college to learn these. Everything can be learned online these days.
Another way is to take coding bootcamps. And that's specifically for coding but you can also learn other skills in those. After you've learned these skills, or while you're learning them, make it a habit to build tools in your spare time. As you learn, use the skills you're learning to build software. Eventually, you'll be able to do smaller projects for companies or people.
Salary Can Be Between $80-$130k Per Year
So depending on location and seniority, they can get paid between $80,000 and $130,000. And that's like normal pay. The median is above $100,000. Top 25% earners in the United States make over $130,000 per year. So these are normal salaries. These are not the top-end or low-end salaries.
What’s The Alternative Method?
However, let's talk about an alternative method to get contracts as a software developer. This method has more risk, but has way higher rewards if you do things right. It requires a different set of skills in addition to the tech skills. Let's talk about how to get clients (the alternative way) as a freelancer or business owner.
Most Developers Don’t Know How To Speak To Talk To Clients
There are already skilled software developers out there who have spent years learning to become a developer. What they don't know is how to deal with clients, and how to get clients in the first place.
Get A Team And Focus On Getting Clients
So while you can go on freelancing platforms like Upwork, and get projects as a software developer. And they can be very good, well-paid projects, as a software developer or freelancer, what you could also do is get a team of software developers that is better at what you're doing. And then you can focus on more of the business aspects instead of doing coding all day.
The developers you could work with don't want to learn these business skills and would rather code all day. What you can do is differentiate yourself from the crowd by learning business skills and communication skills.
It’s Very Rare For People To Have Both
There are way more technically smart people than technically smart people with business skills out there in general. It's a very rare combination to have the two together. This is where you come in. If you're interested in being an entrepreneur, not just a developer who codes, what you can do is learn the fundamentals of software development and software project management, then get people on your team who can work on delivery with you and do the majority of the coding, if not all of it.
So what you'll be doing is selling projects or the team's time at a profit. This is how every business runs, by the way. They sell products or services at a profit. This is a good thing. That's how business works. Everything you've ever bought works like that.
They Don’t Know How!
What businesses want to do is not deal with developers directly, usually. They don't know how and they don't want to figure it out by burning through cash. This is where you come in.
You Are The Link Between Clients & Developers
You are the facilitator. You are the person who comes in and makes sure tech people have someone to talk to in terms of tech, and clients have someone to talk to in terms of business needs.
If you are able to connect those two needs and you can get clients, you can own a business selling software development as a service. Skills like sales and how to speak to people in their own language, and basing the conversations on what they want, what their dreams, desires. and ambitions are. This type of skills is not very hard to learn.
Business Skills Can Be Learned
Most people are just not willing to learn it. They don't respect that type of skill. And even if you're an introvert or whatever, and by the way, I am an introvert, I didn't even know how to shake people's hands before I learned certain skills. Even if you're an introvert, you can learn this. You can learn how to communicate. You can learn sales. You can learn marketing. You can learn all this (all the stuff that a business owner needs).
Essentially, you can have a team instead of doing all the coding yourself. It really depends on where you want to go, and what's your ambition is also in terms of income. Clients would rather pay someone $75 to $125 an hour than to hire their own teams, train them, and figure out how the tech requirements fit together. Clients just don't want to deal with that. This is usually superior for people who are entrepreneurial than doing projects themselves, and just freelancing at an hourly rate.
Basically, you could hire developers in countries where a good salary for a developer is below $25/hour. $25 would be at the top end in most countries. And your clients (or rather, your business's clients) get charged an agency fee, your agency fee. Either an upfront, multi-1,000-dollar fee, or a multi-10-to-100,000-dollar fee, or an hourly fee of $50 to $150 an hour or more, depending on the complexity of the projects, the programming languages and the skills required. And in return, they get all the stuff that I mentioned before.
Once You Get Paid,You Pay Your Team
The clients pay you first. And once you are paid, your team members get paid afterward. That way you reduce the risk in your business.
You can figure out all of this on your own. Or you can get mentored on how to do this. By the way, here’s a link to interviews of people who got mentored and got results with building an agency like this. There’s also a link on how to join a mentorship program like this. So check it out at the end of this article.
So how do you get contracts, anyway? Here's a short summary. But if you want a detailed process, check out this playlist that gives you a whole list of instructions on what to do to get these types of projects.
Get An Account on Upwork & Apply For Jobs
So step one, get an account on Upwork and leverage your skills and your team skills, previous work and expertise to get projects via your profile. Then send 10 proposals per day. Spend 4 hours per day on contacting clients and interviewing them to find the best project and send highly personalized proposals to get work. And then, think about getting a mentor to shorten the learning curve and get your business up and running faster, to learn how to do all this much better.
Or take it slow and start with smaller projects and build it up over a year. Build up your portfolio. Build up your skillset and everything else over a year, perhaps as a side project on top of a full-time job, for example.
If you enjoyed the message in this article, I would really appreciate it if you hit the “thumbs up” button in the video above to help out the channel. Also leave a comment below.
Find Out How To Get Clients Below This Article
Now, let's go to the next video at the end of this article which explains the step-by-step process of how to get leads. So go to the end of this article and click on the link. There's a whole playlist on how Upwork works but also there are guides for software and web developers.
What To Watch Next:
Interested in building a business like this? Get on a call with one of our instructors and get advised on what you can do to build a business like this.
You may even get offered a chance to join the mastermind where we all share working business models (optional). Click the button below to apply.