We recently had the pleasure of speaking to Mike Nicholaides, CTO of PromptWorks, a Philadelphia-based software consulting shop. Mike was willing to share insights about his role, offer his advice to aspiring programmers, and pull back the curtain on PromptWorks’ hiring process for developers.
Thanks for being willing to chat with us! Let’s start by asking: what’s your role at PromptWorks? What are you responsible for?
I’m CTO, Co-founder, and Software Engineer at PromptWorks. We’re a small company so I wear many hats. Some of my responsibilities are hiring, recruiting, and retaining great developers, setting technical direction for the company, fostering technical leadership amongst our staff, and developing products and internal tools.
Something I know our students are curious about is what you look for when hiring developers. Can you shed some light on it?
When we’re hiring developers we’re primarily looking for people who are smart, can get things done, and will collaborate well with the team and our clients.
By “smart” I don’t mean they have academic degrees. In fact, we don’t look at degrees at all when evaluating candidates, not even undergraduate degrees. We’ve ended up with a mix of developers along a spectrum—some with no higher education at all, some with Master’s Degrees in Computer Science, some with Film degrees, and one of our developers is a Flatiron School grad with a degree in Psychology.
We look for people who “get things done.” In other words, we’re looking for those who have a balance of pragmatism and perfectionism. Doing great work for our clients takes both. We want people who strive to write beautiful, maintainable, easy-to-understand code, but can still take a ball of mud inherited from another development shop and slowly work it into something great.
At PromptWorks, a good portion of a developer’s job involves collaborating with our team and our clients’ teams. We look for developers who are more eager to learn from each other than fight over who has the best solution. We look for developers with social skills, empathy, and a knack for communication. These aren’t traditionally considered the most important skills for developers, but for us, they’re paramount.
What’s been your impression of the Flatiron School grads you’ve worked with?
The admissions process at Flatiron School selects very impressive people. Every grad I’ve met so far has shown drive, initiative, and the kind of skills and attitude I mentioned above. I believe their grads could be successful in any field they choose, and we’re happy they chose software development.
We’ve hired one Flatiron grad and have worked with three others so far. We find each of them motivated to learn new things and take on new challenges. They get along great with the rest of our team, and they are dedicated to helping their team, company, and clients succeed.
On a technical level, Flatiron grads come out of school with a solid technical foundation that’s more geared towards real-world development than most university degree programs, in my experience. Because of this, they ramp up quickly and become productive sooner.
Many coding bootcamp students are relatively new to tech. What do you wish you knew when you were first starting out in tech?
First and foremost, I wish I knew starting out that it’s more important to make your customers, clients, and users feel like they are being taken care of than it is for them to have bug-free, perfectly working software all the time.
Secondly, knowing how a company’s business works and what the user’s needs are is just as important as knowing how to write software.
Last but not least, I often felt intimidated by tech that seemed out of reach. But I know now: if there’s something that you want to be able to do, hard work will get you there.
I often get asked by people first starting out, or people just graduating from a coding bootcamp what they should focus on learning. Should they try to get a broad sense of the field, or go deep into a particular technology? And if going deep, which technology should they choose?
I’m not going to presume to know what people should do, but I can say what worked for me. Follow your interests and passions. Find out what you enjoy and do more of that. When you find something you like and do it a lot, eventually you will be good at it, and when someone is hiring for that kind of skill, you’ll be top of the heap.
What piece of advice do you have for junior developers looking for that first job?
Networking is very important in this line of work. Take advantage of your city’s tech community and attend meetups. Meeting someone in person is 100 times more valuable than getting your resume to the inbox of someone that you haven’t met.
Get in front of people. Talking at a meetup is a great way for people to see that you are smart, can learn new things quickly, and that you’re looking for a job. It also makes a great icebreaker topic, giving you a chance to have more one-on-one conversations with people during the meetup than you would otherwise. Doing a lightning talk that touches briefly on a new technology, tool, or library is one relatively easy way get in front of people. Don’t feel like you have nothing to contribute because even a very basic intro to any technical topic will teach someone something and the majority of meetups are eager to fill speaking slots.
How can junior developers stand out in the interview process?
Flatiron School grads already stand out as well rounded, sociable, and generally impressive people with a solid technical foundation. For me, an additional factor that sets one junior developer apart from the others is having examples of work that demonstrate some depth. A lot of juniors’ Github pages are mostly tutorials and assignments they did in school. A real-world project that is actually being used by someone, even if that someone is only the developer, is something that I rarely see, but when I do I know that the developer had to think through real problems and come up with real, workable solutions. That’s something you don’t often get by following tutorials.
Thanks again for taking the time to chat! Before we let you get back to it, what tech trends are you most excited about?
So many, but here are a few:
Polyglot programming becoming the norm
Functional programming slowly but surely permeating the world of development
Old technologies being rediscovered by newer developers: Vim, Emacs, Make, shell scripting, lisps. There are a lot of good ideas and rock-solid tools out there that have been overlooked for a long time.
Another trend in the tech community that I’m excited about is the effort to be more inclusive and welcoming. In my opinion, our field desperately needs more diversity and I’m happy that conferences are intentionally including more diverse viewpoints and that programs like Flatiron are providing a pathway into tech for people from different backgrounds.
Interested in starting your own career in tech? Try our new Bootcamp Prep course today!