As a fullstack developer, you ask, what additional training can I do to increase my wages?

The advice below applies whether you are a full-time employee (FTE) or a freelancer.

I’ve got some bad news for ya. As a software developer, you’re used to solving problems with technology. This problem, however, is not technical in nature, and the answer isn’t, either. You may not want to hear this! The answer to increasing your wages is in sales, marketing / public relations, and – here’s the kicker – just raising your rate!

But how can I just unilaterally raise my rate, you ask? Well, there’s a whole course about that called “Double Your Freelancing” (I’m not an affiliate, and I make no money if you click on that link!). I suspect you can learn from that course. But I don’ know, to be honest: I haven’t taken it! And I’m sure there’s a lot more to it than the name, but that name gives you a place to start: just raise your rates. Here are some quick tips that can help.

Suppose you’re a freelancer, and you only have one client. You’re afraid to raise your rate with the client! You do everything they ask, without complaint, because you’re afraid they will drop you, and use someone else.

Here’s where the sales and marketing come in. You should spend at least 20% of your time marketing yourself to get another client, and at a higher rate than what you currently charge. As your freelancing career matures, you will probably spend more than 20% of your work time on marketing and sales, but for now aim for 20%. You’ll put in the work to find good clients who pay more, and you’ll build your reputation so that they can find you.

The same applies if you are a full-timer. Shop yourself around. Do the work to get interviews at other companies when there’s no pressure to take a new job – you are just testing the water. Make positive contacts with other developers at other companies. When there are openings at their companies, you want to be the person who comes to mind to fill that role. The beauty is that you don’t have to take any position if it’s not right for you. But it gives you more freedom and more options.

When you have more options open to you, you don’t have to be afraid, and you don’t have to tolerate low wages.

I’m going to be honest with you, though. I was in the situation where I had exactly one client. When I was first hired by him, he asked me to do a few things that were fairly difficult – for example, find and fix a race condition in a complex (and awful) Android code base. I did that at a very low price because I was new to freelancing, fairly new to Android programming, and I just wanted to get some experience under my belt.

Well, over the years I kept taking work from him. He started asking me for other kinds of work – web development (backend and frontend), database work, systems administration. I felt like I should be paid more, but I felt really awkward asking for an increase.

I finally announced a 20% increase for new work, and my client did not complain one peep.

A few years later, I was still limping along with just one client. I’ll talk about that later. But I finally decided that the client work I was doing was not worth the trouble. I’ll talk about that later, too. The end result, however, was that I announced another rate increase, by about 40%. The client grumbled and mumbled, but they agreed.

The point is the same, though. I was willing to lose the client over this rate increase because I had other income. This is why you should always have a back-up plan when demanding a rate increase. You control your rate, but not everyone will pay you what you want. If you ask for a rate increase and your client balks, you need to be able to say “bye”, or it just looks like a sad bluff.