Foci Solutions operate at the intersection of training and software delivery. Our mission is to solve the software industry’s talent crisis in a systematic and sustainable way. We value curiosity and learning and believe that instilling those values in our clients will help them not just attract but also build up the best talent.
Tell us about yourself?
I went to university for engineering with a dream of getting into silicon chip design. The combination of the tech bubble bursting in the early 2000s and my realization that I was not a stellar student meant I had to look for my plan B. After a short stint with a student-run IT startup, I ended up at one of the big five global consulting firms. I later joined a small software outsourcing startup to build out their enterprise system integration business, which I eventually spun out to form Foci.
I was always fascinated by the connection between business and technology. My first taste of entrepreneurship was with Junior Achievement in high school and, eventually, my first computer resale business when I was 19. I even did a Minor in Business and Entrepreneurship. So, I guess somehow I was always destined to end up in tech consulting. I love problem-solving and have a short attention span, so being able to help different clients work through their most challenging problems is very satisfying.
If you could go back in time a year or two, what piece of advice would you give yourself?
Look to hire experts and hand off work to people who are better at it than you sooner than you think. Don’t wait until you hit your own limits before looking for help. Expertise helps you scale faster and helps you learn. So, hire the experts as soon as you can afford to.
What problem does your business solve?
We’re solving the technology talent crisis. Senior software talent is scarce, expensive, and hard to retain. Outsourcing the development of your core intellectual property to some offshore dev shop makes you dependent on them long-term and is seen as a risk by investors. We work with clients to get more value and velocity from their junior developers through active coaching and mentorship. We then teach our clients’ entire team how to continue to do that themselves, so they can create a self-sustaining pipeline of engineering talent without the need to rely on headhunting or outsourcing.
What is the inspiration behind your business?
When I worked for a big consulting firm, they hired almost entirely on potential and then invested in coaching, mentorship, and training. I realized that the people I worked with then were some of the best folks at synthesizing information, breaking down complex problems, communications, and getting people mobilized. When I started working with more software-focused teams, I realized those skills were massively lacking and were often what was causing projects to slow down and even fail.
Software is fundamentally a human business. It’s creative, collaborative, and relies heavily on judgment. Yet as an industry, we over-rotate on technical and toolset proficiency versus soft skills. Through my years of consulting, I’ve noticed that the most efficient and successful software teams are not the ones with the best algorithmic programmers or the most proficient developers in Java or C#. The best teams had good engineering instincts and behaviours (e.g., broke down problems into manageable chunks, were good at research, understood quality engineering, wrote testable code, wrote good documentation, and could argue their ideas effectively yet respectfully).
I also observed that very few software organizations had any kind of formalized coaching or mentorship programs, and when there were some, they were mostly focused on technical skills. I felt sympathy towards junior developers who were expected to just jump into the deep end and figure things out based on what they learned in school, which was becoming more outdated by the minute. I believe this is at the core of why we’re facing a systematic talent shortage in the tech industry. We simply have not invested in our people sufficiently to ensure there’s a constant supply of folks capable of solving complex problems, learning through research, and actually delivering software.
So, I’ve made it a mission to take what I’ve learned through my career along with the collective experiences of everyone who works at Foci to solve the talent problem at its root for software organizations.
What is your magic sauce?
We employ what I like to call a “player-coach” model. Unlike traditional training or advisory services, Foci engineering teams actually work with our client’s teams deep in the trenches to help them deliver software side-by-side. We employ active coaching and mentorship through formalized processes (e.g., one-on-ones, code reviews, pairing) to teach high-quality engineering behaviours in the context of the work people are doing. This is basically on-the-job training but taken up to 11 in terms of intentionality and focus.
Since we’re doing this with our clients inside their environments, there’s no real impact on the business. They don’t have to manage the complexities of taking team members out of a product release cycle to send them on training only to try to re-integrate them later on. All the learnings are within the context of the client’s product delivery cycle, which makes them immediately relevant and sticky… all without missing a milestone. In fact, by having a Foci team alongside, their delivery often accelerates.
What is the plan for the next 5 years? What do you want to achieve?
We just want to keep doing what we’re doing, but for more clients. It would be awesome to really start a conversation around coaching and mentorship within software teams and have industry leaders commit to investing in junior staff in a meaningful way.
What is the biggest challenge you’ve faced so far?
The biggest challenge has been to get our message across. We don’t fit neatly into either a training or outsourcing bucket, so getting people to understand our story isn’t easy. It’s a high-commitment business model that only works when you have progressive technology leaders who are willing to really open up their team culture for examination. People have short-term pressures, and we’re selling a long-term strategy.
We’re investing more in sales and marketing to get the word out and to hopefully reach other leaders seeing the same problems that we are.
How can people get involved?
If you’re interested in what we’re doing or just want to chat about software engineering culture in general, please connect with me on LinkedIn. I’m always happy to riff with like-minded tech leaders on how to make our team better and more successful.