Effectively Human

Making Money as a Software Engineer

Episode Summary

There's more than one way to make money as a software engineer-and in the age of COVID it's best to be on know with all of your options and the pros and cons of each!

Episode Notes

There's more than one way to make money as a software engineer-and in the age of COVID it's best to be on know with all of your options and the pros and cons of each!




To read more from Morgan and Effectively Human, visit Effectivelyhuman.tech. 

Want to submit a question to be answered on the podcast?? You can do that here. 

Episode Transcription


[00:00:00] Let’s talk about making money as a software engineer.

Welcome to Effectively Human, where we discuss how to close a knowledge gap between technology and the people who use it. Each week, your host Morgan Lopes will share real life practical tools on how to bridge the gap. Let’s jump in.

When it comes to making money as a software engineer or a computer programmer, a developer, many people default to W-2 employment: getting a traditional job, applying to work for a certain employer. But the reality is that is one type of work. There are a few other options that are at least worth considering. They may not be the longterm solution or the answer to all of the potential hopes and dreams [00:01:00] of a professional, but they present ways of getting experience of trying things. And before committing to traditional employment, they can give some exposure and bolster someone’s resume in a way that can be helpful to get that job.

The first is a freelancer. So freelancers or contractors as they’re often referred. Are brought into companies to help either for a project, a program, a short period of time. They might be contracted on retainer or paid per hour, paid per job. There’s a lot of different ways of getting paid as a freelancer who’s writing software for somebody else.

People tend to like freelancing because it’s flexible. It provides a lot of freedom and autonomy. There are certain things as a freelancer that the company that hires you cannot dictate. They can’t tell you when to show up necessarily. They can’t show you what I can’t tell you what to wear. There’s a lot of freedom. Now, there are downsides to being a freelancer as well.

[00:02:00] Freelancers often find themselves having to do the hunting for new work, new opportunities. There is a lot of managing the different parts. Freelancing is a form of a small business of sorts. So handling taxes and a lot of the other overhead or organizational needs come up as being a freelancer. For some, the downsides are too much, but for many the opportunity and the experience that it provides is really valuable and makes freelancing a viable option to make money as a software engineer.

Another opportunity is entrepreneurship, being a business owner. So not merely a freelancer who is a one person show, but actually building a team of people and building a company that is doing something. Whether it’s an agency, whether it’s a product,  is actually starting something of your own.

If you like the idea of ownership, of autonomy, of [00:03:00] building something that is bigger than yourself, that will outlive yourself, that you can contribute to and have a legacy of sorts, then entrepreneurship is a valid option. However, there are downsides to entrepreneurship, it can be pretty complex. Usually building a businesses can take away from the time and energy that you could be using honing your craft, learning new skills and developing yourself as a software engineer in business ownership.

There’s also this idea of the “E-Myth”. There’s a great book by Michael Gerber called “The E Myth Revisited”, and it talks about the belief or this misconception: the skills it takes to complete something is the same skills that it takes to have a business that does that work. A great example that it uses in the book is that of a pie company, a pie shop.

We’ve all been there at Thanksgiving or at a time like a family gathering. And you have a relative [00:04:00] who does a great job at making a pie or a something recipe, and people want to be supportive and encouraging. They’re like, “Oh my gosh, you make the best pies. You should start a business that makes pies,” but the reality is making a good pie and having a great pie shop are very different.

Usually, if you spend a lot of time just in the making of pies, then that takes away from the time spent building the business of selling and marketing and operating a pie shop. Vice versa. If you’re spending all of your time working on the business, with operations and sales and marketing, then you have less time to make pies.

And there’s a really good chance that you’ve got into business to do more of the thing that you love, but starting the business actually takes away from that. So there is a downside in entrepreneurship as well, but it can be a great thing for a season. It can be a great thing to try. For many people, they have the freedom and flexibility in their own life to get creative about how they make money in software engineering.

[00:05:00] We’re going to spend the rest of our time talking about the different types of employment. So not all jobs, not all W-2 employment opportunities are created equal. There’s a couple of different divisions here. A couple of buckets that I want to kind of pull apart. As we think about a job as a software engineer, before I do, I want to paint a picture.

We’ve talked about freelance and some of the value of being a freelancer and then the downsides. We’ve talked about entrepreneurship and why some people do that. And then also some of the downsides with employment. I think it’s worth taking a second and highlighting some of the values of getting a job, working for someone else as a W-2 full-time or part-time employee.

The two biggest value adds that I’ve seen are security and stability. When you have a job, it typically come with benefits and there’s an expectation of future work.  Someone else is often doing the [00:06:00] sales and the operations and the administrative work. And so you can focus more time and energy on the skill and the behavior that you want to develop, which is great.

Now there is also downsides to full time employment, downsides being: you’re more or less locked in. Employers can dictate a lot of what you get to do, what your day looks like, what you wear, how you show up when you show up. All those things can be defined by somebody else. For many they’re willing to, you know, grab hold of that security and the stability and sacrifice some of that freedom. But it is worth considering that that can be a downside.

The final point I’ll mention before going into the different buckets of job opportunities for software engineers is a lot of organizations can dictate what you’re allowed to do to earn money outside of work. So maybe you like side projects or little hobbies, but if they pertain to creating software as well, there’s a chance that the [00:07:00] employer would have terms within your contract with them that don’t actually allow you to do that. It could be phrased as a noncompete within your employer agreement. Or there a lot of other terms used by employers to limit the amount of software engineering someone can do outside of their day job? So security, stability, consistency, the ability to focus and really hone in on something is a tremendous benefit of getting a job somewhere. But it also has some of the downsides as well.

I don’t think with all of these, there’s a right answer. It’s really a matter of figuring out for you and in your season, what are you looking for? So let’s dive in, in our final moments together into the three different types of jobs you can get somewhere .

For the first is what I would consider a product shop. This is perhaps one of the most popular or the largest opportunities in technology, which is groups or businesses that are building technology and [00:08:00] selling it. So SAS businesses. People that the product that they sell is the software. That’s a product shop. If you think of the idea of going a mile wide versus a mile deep product shops, allow software engineers to go a mile deep. Becoming subject matter experts, we’re spending a lot of time diving very deep into the technology that they create. That’s a product shop.

Next is an agency. An agency is  an organization that has collection of  often specialists and they come in and they work. Either on retainer or on a project basis for other companies and the team members, software engineers that work at agencies get a variety of experiences.

We started polar notion back in 2012, which is a software agency and engineers at our agency could touch five, six, sometimes up to 12 different projects. It’s different companies, different apps within a year. So a lot of opportunity to go very [00:09:00] wide. Our type of agency engineers didn’t really go very deep because they were often onto the next project. But Early on in a career that was a great way of sampling a lot of different types of tech, trying different things, getting a lot of opportunities to spin up new code. And then also as you’re learning and growing, not get too bogged down with a lot of technical debt. And you can try again, next time of start with more Greenfield development. Those opportunities tend to be more prevalent in agencies.

With product shops, there are product teams that engineers on product teams have never started a new app in that company. They have inherited something. And they’ve spent a lot of time and energy supporting and advancing an existing piece of tech. Agencies often allow for a little bit more variety, less of an opportunity to go super deep.

And then finally I would consider this last bucket support. So if our first one is a product shop, the second is an agency. The final one is support. I [00:10:00] don’t mean support in the sense of answering support tickets or, you know, interfacing directly with customer support. But support as a function of the technology. So this could be an eCommerce company and they use a website that has a shopping cart, and they have software engineers who manage the shopping cart. But the point, the thing they’re selling, isn’t the tech or the service of technology, they are selling something else. And technology is the supporting infrastructure that allows that to happen. So those types of engineers could be building integrations or extending the technology that allows the main thing to get sold.

One of the most interesting groups I ever heard of that had technology kind of in this function, they had kind of a gooey experience. They did custom tombstone engraving, and part of what their team was working on was building a way to make it [00:11:00] easier for somebody who wanted a tombstone customized to do that with technology. That wasn’t technology, they were selling like a product shop. So they weren’t trying to create something that other tombstone engraving companies could use. They weren’t charging for access to their tombstone engraving technology. They were building something that supported their existing established business, that engrave tombstones. They tried to make that easier, more efficient, faster, higher quality.

So they use technology to do it. So within employment, there are three of the most common options, which are a product shop, an agency, and working in a support capacity. All would be considered software engineers, developers.  But the types of opportunities that they are exposed to the diversity of thoughts and opportunities, experiences, chances to grow, learn, they’re all very different.

I don’t think there’s a right or wrong. And I think for certain seasons of life, they may look very [00:12:00] different. The value of these different areas is different as our careers change and evolve. It’s common for people to make a claim that one of these is better than the other. The reality is it depends. I think at certain points in our career, some suit us very well. At other points, we may want to gain new insight or experience as humans.

We have an instinct to assume that the grass is greener on the other side, but the reality is the grass is greener where we water it. We’ve covered a lot of ground. We’ve talked about a freelancer being an entrepreneur, being an employee somewhere, and then we’ve dove into the nuance around the types of companies you can work for. A product, shop an agency, and then in a support infrastructure for a non-tech business. There are a lot of options to make money in technology, rather than assuming the default position or jumping to assumptions it’s worth [00:13:00] taking time early on to figure out where are you today? Where do you want to go? And which of these environments serves you best?

Thanks for listening to Effectively Human. Want to join in on the conversation? Submit your questions on effectivelyhuman.tech to hear them on the show. And of course subscribe so you never miss a beat.