Introduction
Welcome to the third and final installment in my blog series, “My MSSA Experience.”
If you are not familiar with MSSA, check out the first article in the series, “What is MSSA?”
In this final article, we will break down my experience in the Cloud Application Development pathway into the following sections:
- The Technical Stuff
- ProDev Learning
- Help Me Be Not Unemployed
- My Honest Take
Let’s dive in.
The Technical Stuff
As you will remember from previous articles, the Cloud Application Development pathway teaches you a software-development oriented skill set with C# as the target language and Microsoft Azure as the target cloud provider.
My cohort had a mix of prior experience, from never touched code in our lives to people with CS degrees and years of programming under their belt.
Our schedule looked like the following:
Curriculum Schedule
- Intro to Programming & GitHub (2 Weeks)
- Programming in C# Part 1 (2 Weeks)
- Data Structures & Algorithms (4 Weeks)
- Professional Development Week, Non-Technical Instruction (1 Week)
- Programming in C# Part 2 (2 Weeks)
- .NET MAUI (2 Weeks)
- Project Week & Technical Interviews (1 Week)
- AZ-900 / AI-900 (1 Week)
- AZ-204 (2 Weeks)
Our technical instruction spanned 16 weeks of the 17-week program, with every Friday and one week in the middle being devoted to Professional Development.
Further breaking down the technical curriculum:
C# Learning (Parts 1 & 2)
Our C# learning path covered the following:
- Basic computer data storage and processing
- Thinking like a computer
- Basic fundamentals such as data types, variables, constants, arrays, functions/methods, and loops
- Structs, classes, value types, reference types
- Exception handling
- Object Oriented Programming concepts
- C# libraries and LINQ
- Console Applications
- Windows Forms
- Databases, SQL, and Entity Framework
This curriculum brought us from zero programming to being developing create-read-update-delete (CRUD) applications.
We submitted weekly assignments through the learning portal, designed to hammer in the concepts taught during the week.
I will admit, this amount of instruction was overwhelming to digest, and I did not understand it fully, especially in the first few weeks.
That was okay. The deeper understanding came with time. By the time our mini projects were completed, I felt like I could create applications to solve real-life, if not simpler, problems.
Data Structures & Algorithms (DSA)
We covered the following topics during the four-week DSA instruction:
- Arrays (single, two, and multi-dimensional)
- Linked lists
- Stacks
- Queues
- Recursion
- Algorithm types and differences
- Linear and Binary Search
- Selection, Bubble, Insertion, Shell, Quick, and Merge Sort
- Binary Trees and Traversal
- Time & Space Complexity, Big-O Notation
Feedback from MSSA’s hiring partners showed that DSA was the biggest weakness of applicants. This portion of the course was added to improve that weakness.
This content was just as important as it was difficult to grasp. We progressed very quickly in these four weeks and the knowledge was the foundation to tackling the infamous LeetCode problems, critical for technical interviews.
Along with this instruction came a LeetCode Premium subscription for all cohort members, giving better access to learning tools on the platform. Nice perk.
Our instructor in particular did a phenomenal job of walking through each data structure manually and giving plenty of time for revision.
All of the classes were also recorded, not just the DSA classes, which allowed my cohort to rewatch and relearn any concept that still felt fuzzy.
I would be lying if I said that I left this DSA instruction able to solve dynamic programming like a pro, but it definitely gave me a foundation to grow on.
If you do not understand what is going on during this portion of the course, ask questions.
More than the pure C# portions, DSA learning benefits greatly from walking through problems with a seasoned developer.
.NET MAUI
In this portion of the course, we covered the following concepts:
- Functionality and architecture of .NET MAUI
- Cross-platform considerations
- XAML
- MVVM & MVC architecture
This portion of the course was relatively short compared to the other curriculum but was the first “framework” that we learned.
Depending on where you live, the demand for this framework may be lower than other frameworks like React (JavaScript) or Spring (Java).
If you end up liking .NET MAUI, you can use the knowledge learned here to deploy your apps cross-platform. We had cohort members deploy their projects to mobile, which was really awesome to see.
This did not make us an expert in .NET MAUI. There simply was not enough time.
I took this portion as an opportunity to see how “a” framework operates, as I knew other frameworks would use similar concepts.
AZ-204 Developing Solutions for Microsoft Azure
This part of the course gave the basis for the “cloud” portion of the cohort.
We had a number of interactive labs that allowed for us to configure services in an Azure environment. This is where “coding” took more of a backseat, and we focused on “architecting” how we could use cloud to deploy applications.
This included primary services of Azure such as Blog Storage, Functions, and Cosmos DB. This also went into EntraID and how it could be used for security purposes in our cloud-based applications.
We did not learn everything needed to pass AZ-204. This served more of a starting point. I estimate self-study for another 2-3 months before being ready for the exam.
Mini & Final Project
Our cohort had a mini project and final project as part of the curriculum.
The mini project was meant to be bring together everything learned in the first half of the course, prior to professional development week. The majority of our projects were simple CRUD applications using Console Applications or Windows Forms.
The final project was meant to bring together all of our learning to that point, which was 3-4 weeks prior to graduation. These projects mostly featured .NET MAUI or Blazor based applications and integrating a database such as MS SQL Server or SQLite.
I recommend figuring out your project idea early.
I benefited from making a small prototype of my application for my mini project and expanding upon it for the final project.
This let me keep a frame of reference and have a solid project with 100+ hours of work to showcase to employers.
I believe the curiosity and skills developed during this project is what ultimately landed me one of my offers.
Technical Interviews
Our cohort had a few opportunities for “technical interviews” with our technical mentors.
This was meant to simulate how a normal technical interview with LeetCode-style questions in a live (virtual) environment would be like.
The program also brought in an outside party to do a small technical interview with each student. This consisted of an easy level LeetCode problems and general knowledge questions on C#, .NET, and programming concepts.
While it has plenty of room to grow, this part of the program made sure that our first technical interview was not one that mattered for a job, but was in a place where we could get immediate feedback in a low-stakes environment.
Certifications
Below is a list of certifications that my cohort targeted during the program.
- AZ-900
- AI-900
- AZ-104
- AZ-204
- Security+
We received 1x voucher for a Microsoft certificate of our choice, which was quite nice to have.
I ended up getting my AZ-900 certification, which served as a small cloud certificate to show a baseline of knowledge to employers. This was, by no means, a certificate that would land me a role, or even guarantee an interview, but it possibly gave me an edge over another candidate with a similar profile.
I would highly recommend deciding what certificate you want during the first few weeks of your program. Then start studying.
Most of us started our certificate preparation too late and therefore, did not have them for our initial job applications.
To give a more precise goal, I believe that AZ-900, AI-900, and possibly AZ-104 are reachable targets during the cohort, with AZ-204 being a post-cohort goal.
Side Note: Security+ is on this list because it is usually required for government support roles. You will not receive any instruction or vouchers for this certificate through the program, but it is also reachable during the cohort timeline.
Technical Instructors
We had a total of four instructors, all being official Microsoft Certified Trainers.
My cohort found that our technical instruction experience varied based on our instructor.
All the instructors met a minimum qualification, but like all teachers in the world, they each had their unique style to teaching.
Some were very “textbook heavy,” relying on the instruction material to lead the curriculum, while others developed their own curriculum on each approved topic, adding in their own experiences in tech.
I was personally a fan of the self-made curriculum, as it gave a feel of practicality and liveliness to the instruction.
Additionally, much of the curriculum officially assigned in the program suffered from out of date practices and aged technologies.
Whatever style your instructor has, you need to ask questions on anything you do not understand.
All of the instructors will happily take the time to help you. There were plenty bits of “free project time” where 1:1 sessions were encouraged.
I am serious, ask your questions. If your question is answered, but you are still unclear, ask another question. Keep asking questions until you get the concept.
It might seem annoying or even embarrassing for you, but the material will snowball fast if you have holes in your knowledge. Chances are, someone else is lost too.
This is your transition, maximize the opportunity.
ProDev Learning
I previously described Professional Development, colloquially known as “ProDev,” as “the other half” of the program. And that does not mean it is the less important half either.
We found the ProDev instruction to be as important, if not more important at times, than the technical curriculum.
The military does not exactly prepare you for talking about yourself, interviewing, and answering behavioral questions. You will most likely find that you are quite bad at it.
That is where this portion of the program comes into play. Here is a list of topics that we covered in depth:
- Figuring out your personal and professional identities
- Researching desired industries and prospective roles
- Networking
- How to market yourself
- Resume, Cover Letter, and LinkedIn
- Elevator pitches, interviewing
- Handling the offer
- Mock interview practice
Our program had Fridays set aside for professional development, where we covered one of the topics above. My cohort in particular drilled behavioral questions from the beginning.
We all developed a bank of stories that we could draw upon, depending on the question asked. Our answers were drilled to match the STAR format and had multiple sets of ears providing feedback.
By the time we went into the real mock interviews, everyone had improved multiple times over in their targeted storytelling and presentation of themselves.
ProDev Week
During this week, we took a break from all technical instruction and solely focused on professional development.
Let me tell you, it was a much-needed break after 8 weeks of drinking C# from the firehose.
This week featured meetings with the other cohorts and working through more mock interviews.
We also had a host of guest speakers presenting their own takes on the job market, MSSA as whole, and what we should do to get hired.
In between these events, our career development manager brought previous MSSA graduates and recruiters that she had connections with to speak to us.
This was incredibly useful and motivating, especially seeing graduates that used to be in our positions, talking about their current lives in tech.
Professional & Technical Mentors
Each cohort is separated into a handful of groups when it comes to mentorship. Each group will have 3-4 professional mentors and 3-4 technical mentors.
Our mentor meetings rotated each week and covered a variety of topics to reinforce the current program curriculum.
This setup was a great advantage, as each of these mentors were subject-matter experts in their fields, with many of them also being MSSA graduates. On top of that, all mentors are current Microsoft employees with a number of years at the company.
These hour-long meetings every week were a great venue to ask any questions we had and get context from mentors that were hiring managers and senior software engineers in the industry.
In my specific case, one of my professional mentors put me in contact with people in his network that could answer my industry specific questions.
Making those introductions expanded my knowledge base with practical examples, and made connections that will help in future job hunting.
Overall, these relationships are what you make of it, you would be crazy not to utilize them as much as possible.
Help Me Be Not Unemployed
Outside of the curriculum provided in the program, MSSA also gives a lot of intangible support and an amount of exposure to internal hiring connections.
Hiring Fairs & Internal Job Boards
Starting with these connections, MSSA has an internal job board in which roles with MSSA hiring partners are posted and available for all members. Ideally, these roles are tailored to MSSA-level applicants.
I would be remiss if I did not say that my cohort saw that many roles in both the job board and hiring fairs did not apply well to an MSSA applicant’s experience level.
Many of factors can play into this, but the program is aware and is always looking to improve its resources for students.
Job Search Support
Our cohort had an incredible experience with our career development manager. Throughout the cohort and beyond, we had constant support in resume reviews, mock interview practice, and finding referrals for our job applications.
This benefit of the program is ultimately hard to quantify but paired with the camaraderie that we felt amongst our small group of veterans, we were never lacking for support throughout the job search.
When I received 10+ rejections in the course of three days, I had a group of people going through the same struggle. When I received my offers, I had immediate support to discuss the offer and talk through any negotiations that I should make.
The MSSA program provided an incredible opportunity to grow a tight-knit cohort in a small period of time. I am extremely grateful for the program, especially this part of it.
Member for Life
One of the perks of graduating from MSSA is the “lifetime membership.”
Say that you graduate, land a great tech job, and stay there for the next 5 years. Then you decide that you want to get back into the market and find new opportunities.
Since you are an MSSA graduate, you can contact your CDM or the MSSA Operations Team, and they will reactivate your internal account access and bring you into internal job boards.
This includes any internal hiring fairs that may also be taking place.
As the program grows and extends its reach, you benefit as a lifetime graduate.
It is a great perk to have and one I intend on utilizing if the time comes.
My Honest Take
Let’s go ahead and put a couple of things out there.
The program is not perfect.
MSSA has grown over the last decade from a very small, in-person program, to a multi-cohort program run across multiple time zones.
It provides a professional and tailored venue to veterans, upskilling them from no coding knowledge to being able to deploy full, if not a bit simple, applications.
It is constantly evolving, adding new perks such as the GitHub Student Developer pack, LeetCode subscriptions, and certificate vouchers, as well as updating the curriculum to address new market trends like DSA focused interviews and artificial intelligence.
Along with that, comes the friction of not always getting it right.
There are issues in the roles presented through hiring partners as “MSSA-friendly,” when they are more suited to candidates with 3-5 years of experience.
There are difficulties in Microsoft MSSA roles being grouped with new graduates with four-year CS degrees and internship experience.
There are struggles with outdated and lower quality learning resources used as the main curriculum.
Some instructors or mentors are not as effective as others and it is identified later than desired, greatly affecting a student’s experience.
And that is just how it is.
This will never be a fully perfect program.
But it is a program that has incredible people behind it, wants the best for its students, and will continue to adapt to a changing world.
That is enough for me to continue recommending it to fellow service members and veterans.
As for my last point:
The program is not enough on its own to land a job.
I know, heartbreaking.
“But Pat, I thought MSSA is supposed to take me from a freedom-defending military dude or dudette straight into a six-figure tech role!?”
For some people, it absolutely will.
But those people will likely already have other certifications, degrees, experience, and a strong network they can leverage, in addition to the skills developed through MSSA.
If you do not have these things, then you will naturally have a bigger mountain to climb in landing your first role.
My cohort was filled with incredibly intelligent individuals. I was floored by the talent that existed in our group, and quite often intimidated by how deeply they grasped the concepts.
I would have proudly served alongside every single one of these individuals.
And yet, my cohort struggled to land roles after graduating the program.
It would be unfair to omit that our cohort end date of November was not well timed with hiring cycles, and that our job search timeline was deep in, what was generally accepted as, a “really tough market” at the end of 2024.
However, it would also be unfair to say that MSSA guarantees you a role out of the gate.
So, you are saying that MSSA is not worth it?
Not at all.
I would absolutely go through the program again.
For me, it gave me the time and skill set needed to land a job prior to graduation.
Sure, I had a few other things going for me, such as a Bachelor of Science in Physics, an active PMP certification, 8 years of Army experience, and a self-taught background in JavaScript.
But even if you are not in a similar situation, I still highly recommend the program to the general military community.
I would recommend that you take stock of what your goals are post-military, what you already have to offer an employer, and what you can feasibly accomplish before applying to roles.
I know, that is very intangible, and I am a fan of quantifiable data. So, I will say this:
The MSSA CAD pathway can get a beginner, with no prior programming exposure, to 70% of a hirable junior software developer, granted they put in hard work during the program.
Saying that another way, if you have no other experience or skills to offer an employer, outside of what MSSA teaches you, you will fall short of the bar to be hired as software developer in today’s world.
Well, that is unfortunate.
Yes, it is. But it is also understandable.
University students study computer science for 4 years, with multiple summer internships, hoping to land a software developer role after graduating.
I would say that creating a 17-week program that can match that four-year college experience is a tough sell.
Now…
I am not saying that you need a college degree to land a job.
I am not saying that you need 3-5 years of developer experience prior to transitioning out of the military to get a role as a software developer.
I am not saying that you need every available Azure and AWS certifications to land a role in cloud.
I am saying that there is a proverbial bar that you need to reach to be hirable.
I am saying that all the things listed above greatly improve your chances in a job market saturated with candidates with these qualifications and more.
I am saying that MSSA gives you a great set of technical and professional skills to augment your ability to apply for and land roles.
In essence, I am saying that MSSA will get you a good part of the way, and it is on you to get yourself to the finish line.
Here is my list of “finish line things” to do while in MSSA:
- Get an intermediate level cloud certification such as AZ-104 / AZ-204 or AWS-SAA
- Develop and publish a working project on GitHub or your personal website
- Drill Data Structures and Algorithms with a goal to be able to communicate and solve all easy, most medium, and a handful of hard LeetCode problems.
- Do every mock interview you are offered
- Meaningfully network on LinkedIn with techies in your target areas and have an online presence
Conclusion
I got lucky in my job search. And by lucky, I mean that in the sense of “preparation meets opportunity.”
Out of 70+ applications submitted, I landed five interviews, and two job offers, all in a country where I only had an intermediate level of the native language.
My role gives me a top 20% salary in Germany with a company that fully supports my transition out of the military and immigration status into the economy.
I am joining a great team with a wonderful 30 days of vacation (thanks German labor laws), and am genuinely excited to learn my new role.
My experience through MSSA made this all possible.
Learn about the program, take stock of your situation, and decide if it is right for you.
If you end up saying yes to MSSA, be ready for a wonderful, chaotic, and rewarding experience “breaking into tech.”
Cheers,
Pat