Apart from freelancing, what are some other ways to make money as a software engineer?
Consulting. I used to consult for a travel based startups couple of years ago, and trust me, the pay is too good to neglect. I get paid months salary of my daily job as week's pay once I proved myself. It is bit of a gamble and you need to showcase your abilities, have good contacts etc, but it's worth. I earn half year salary i just 2 months.
But being a consultant while you have day job is simply daunting. They suck the living soul out of you. I worked close to 20 hours, hardly got any sleep for first few weeks. Once your team at client place is ready, this will be less. But be prepared to get bombarded by lot of questions asked by the developers and their managers.
It was exhausting, and too much for me. Especially when you have deadlines to meet for your own. So I had to quit it just after 6 months of consulting. But man, the pay was seriously good.
Mev-Rael
Executive Product Leader & Mentor for High-End Influencers and Brands @ mevrael.com
Sr. software engineer is a solid and reliable member for any team. He has experience and sees a big picture. He can save a lot of time and money. The fact is most of projects and companies doesn't have one and it is hard and expensive for many small companies to allow one.
From the other side it is also not profitable for Sr. software engineer to work full-time for a single company with small experience and many jr. designers, managers and engineers.
There are 2 the most profitable ways for sr. software engineer to earn money:
1. Engineering management, business/system analysis, software design & architecture
Since you don't want to hear about freelancing and it is, of course, the most general option I will expand the term of "freelancing". Every new project requires analysis, software architecture and software design solutions. The most of projects doesn't have it.
Senior's primary job is not to write code, you may offer other services and solving problems you faced yourself in past projects. Recall each case when you had a bad manager, when you had no good specification, no simple diagrams, no documentation, etc. Change it! You know how others, less experienced developers feel like. Help other teams to work on a good codebase.
2. Consulting
Help other teams to become better. You know how to do things faster, what could be used, what should be changed, optimized. Help small organizations to establish a solid development processes, hire good engineers and train them if needed, organize work, propose your solutions and provide your arguments how you see a problem could be solved in the most efficient and cheap way.
The most of new startups and small projects are in need of your experience. Help them build good products. Only remember that most of young startups don't have much money.
Other ways:
Maybe those won't give you much money instantly, but they will help you with 1. and 2. You should build your reputation first. To do so provide valuable content and make companies impossible to ignore you. Let them see how they will benefit from you.
Finally, you just could start your own business, consulting or web agency, startup.
P.S. Keep learning! Senior Software engineer is not the end, it is only the beginning. Depending on what you want to do more you may choose your path: