I am probably not overreaching myself. I am only applying for entry level positions where the bar is low and my skills are not entirely rudimentary.
Don't do this. Apply everywhere.
The entry level positions attract the most under qualified candidates. It's because of this that it's difficult to get hired. There is a high supply to low demand ratio. I'm not telling you to not apply, but I'm explaining that if this is all you do you'll be applying for a long time.
Also, keep in mind that an employer seeking an entry level programmer with no experience might not offer you the experience you need to move up. You might just get stuck working and continuing to learn on your own to get a better job.
So far better is the return if you can get a job that challenges you.
I can't tell you where else to apply but broaden your options. Apply for any position you feel you could do. What you need most right now is work experience.
My current career has been successful. Albeit a very different industry, the fact that I have worked my way to a Sr. Leadership position is a positive right?
Yes and No.
When a candidate has an imbalance of skills it could be a red flag for the interviewer. For example; You could apply for a Junior Programmer job, but during the interview you claim to have Senior Leadership skills/experience. This is an imbalance and they will ask you "Will you be happy working as a junior programmer?" and maybe "How will you feel answering as a Junior to another Senior Leader?".
These are questions to be answered in the interview, but maybe not on your resume. You don't see many job advertisements for junior programmers with senior leadership experience. So when you're highlighting your skills be sure to be as relevant to the job as possible.
I am attempting to go the portfolio route so that I have concrete code to show what I can do. However my portfolio is very limited as I have chosen to emphasize seeing projects through to completion. After all that too is a desirable skill I'd like to convince makes me worth hiring.
If you're going to do freelance work, then the portfolio is a must. A freelancer has to find multiple jobs per year just to stay alive.
If you're looking for work as a full-time programmer, then the portfolio might be a waste of time. You only have to find 1 job.
Portfolio is a showcase
This is the root of the problem. It's a showcase and/or trophy shelf of your past accomplishments. As a new programmer there isn't anything there to showcase.
A freelancer is constantly updating their portfolio. As better work is completed they drop the weaker examples.
As a new person looking to enter the field. All of your work is a weak example. Putting it up for display might get you rejected from the job before you had a chance to say anything.
This is where I say "less is more" as it's all about making a good impression. Do, say and show nothing that could weaken the impression you make.
Blog your hard skills with examples
An alternative to the portfolio is to blog. Blogging is better because you don't have to finish a project, and you can measure the Google analytics or receive comments. This gives you feedback on how good/bad the blog post is. Comments like "this really helped me solve a problem" are strong indicators that an employer will also appreciate the blog post.
Blogging is actually more challenging than trying to do a portfolio, but I argue it's less risk if you understand the objective of it all.
The objective is to get a job, and employers want to know if you have the hard skills necessary to do that job. So blog about those skills and include examples. Go to your resume and look at what skills you claim to have, and then blog about it. You say you can write "unit tests in Java", then write a blog that shows how to do it.
Blog as much as a you can, then ask your friends/co-workers/professionals to help you sort out which blogs to keep and which to throw away. Reduce your blog down to the best of the best.
Keep blogging until you've covered all of your hard skills. You should have something to say about everything you claim you can do. Yes, this is an endless goal but it gives you topics to write about.
Don't just blog about C++ and how you use it make games. Show a variety of topics that are relevant to the job you want. You know how to use Git? Write blogs about that too.
I am attempting to go the portfolio route so that I have concrete code to show what I can do. However my portfolio is very limited as I have chosen to emphasize seeing projects through to completion. After all that too is a desirable skill I'd like to convince makes me worth hiring.
Just do ONE project.
Let's call this a personal project.
Now make this project accessible for everyone. A project that exists only on your laptop, requires special setups or has to be demonstrated isn't going to work. It needs to be something anyone can quickly give it a try.
Solve only ONE problem in your project.
Pick a problem everyone has. Don't go after complex problems or special interests (this is a demo of what you can do, it has to be something people can quickly understand). You could make a "calculator" as an example. Yes, the idea is brain dead simple, but I know many senior developers who could not complete a "calculator" project on their own.
Now make it neat, clean and organized. Write clear comments, documentation and put the source code up on GitHub/Bitbucket or your blogging platform.
Now set yourself a deadline and finish it.
My resume is rather short and my online presence is limited but I've added all those.
An online presence can be a bad thing.
Employers look towards your online activities to sample your soft skills. They want to see what kind of person you are. A lot of technical people think their online presence is where they provide technical proof of their hard skills (even I gave blogging above as advice), but anything negative from social media or news about you will hurt your job hunt.
So review your twitter history, make all your Facebook data private and inspect your Google results.
When doing a job hunt a candidate should always do a clean up of their online presence.
I have been using cover letters trying to sell myself. I have been careful to be confident and not apologize for my non-traditional approach.
Cover letters are tricky.
You need to get a second opinion on your cover letters. You are too close to the problem to be subjective. Ask a senior developer that you know to review your letters.
But whatever I'm saying isn't convincing people to call me and set up an interview.
Please don't give up.
Research, research, research.
I say it all the time on this website. Candidates need to research the company they are applying for. Google them, search LinkedIn, ask your friends if they know anyone who works there, Google the employees and dig up as much information as you can.
Take that information and work it into your cover letters and resume. Make yourself relevant.
Also, tell a compelling story. Are you a person wanting to switch careers? or are you an interesting person with an interesting history who is passionate about their new future? These two people have very different resumes.