How Tech and IT Managers Can Help Make Great Startups
Startups come in many different sizes and flavors. When talking Tech and IT managers, we can include the Chief Technical Officer, Project Manager, Software Engineering Manager, or Team Leader. Sometimes, it can even be the Tech Guru - the gal or guy in a non-tech company who happens to be savvier than everyone else when it comes to tech. If you are in or aspiring to be in any of these roles, you can have a profound impact on the success of your startup - and even more mature companies. Not all of these tips will apply in every instance, but here are twelve tips you can apply to drive your startup to greatness.
Anyone from engineering manager and up will likely be involved in a startup’s planning at the earliest stages - and forever after. Startups can be crazy, requiring a lot of focus on what’s happening today, this week, and this month. At the same time, it’s important to be thinking about next quarter and the year ahead. This is vital with respect to several points:
- How long is your current funding runway?
- When do you expect to a) go after, and b) actually get, your next round of funding?
- What do you need to deliver in order to make that funding happen?
- What IT and developer resources do you need to deliver that on-time and on-budget?
- If you win the next round of funding, how are you going to scale up development?
- Of your existing development team, who is a good candidate for promotion - and what skills would be desirable for them to pick up before you start scaling up?
Yeah, now that’s a load. As often said, “Plans are useless, but planning is indispensable.”
Know your options, the cost, the opportunity-cost or trade-offs, and how long each component will take to put into place. Thinking through these things in advance and having contingencies allows you to adjust to changes faster and more effectively for a far smoother trajectory.
This tip probably falls to the software engineering manager, but it’s also something that can be delegated to another engineer or developer. Even as you’re in the process of hiring a team, begin setting the coding standards you expect them to follow. This may take the form of style guides, commenting rules, details in adding, assigning, and completing tasks in your project management software. It extends to defining what’s “good enough” code by your standard to offset the negative aspects of ‘perfectionism’ (high code churn and late deliverables).
More time will be spent reading than writing code. The software project is likely to cycle through several entire teams before it’s laid to rest, setting the foundation as the first engineering manager will help everyone across its life read it faster, understand it better, and find bugs more easily. Spaghetti code’s in rapid decline, but it’s worthy of extinction. Use code reviews to reinforce style guides and other standards. These efforts can save your startup $100k’s over the years.
Assembling the right team with all of the skills your software will need is paramount. Software development is expensive, so you have important decisions to make in choosing to hire employees, outsourcing to developers through an IT staffing agency, or outsourcing to a software development agency to handle everything.
The best option is the one that fits best with your startup across many variables. Are you planning to return to an office format if/when things return to normal? Perhaps, you want a certain social, cultural, and ideological alignment? Or maybe, you more concerned with things like cost vs. developer productivity, code quality, and dependability? There are a lot of other angles to consider, but you need to consider what’s important - not just to your founding principles, but to your prospective investors.
But, in addition to hiring, you also have to think about retention and turnover. Turnover among developers averages about 12.3% but can easily exceed 25% for tech startups. There are a few reasons for this, like:
- Not having a Human Resources Manager, Team, or Program.
- An inexperienced hiring manager/authority and not vetting candidates.
- A lack of structure, clearly defined processes, and general chaos.
- Poor alignment of personal and company values.
- Better job offers and/or lack of skill development opportunities.
As many startups don’t have a dedicated HR manager, it’s likely going to be a shared duty - and for that reason, you need a consistent standard for “employee issues.” Anything will work better than nothing, so just customizing this free employee handbook for your startup will help buy some time. Even that’s more than what most startups have.
Two things can be said for IT staffing agencies in general. They specialize in recruiting, vetting, team-wide skill matching, and providing essential HR support to the developers they recommend to you. They are also responsible for managing turnover among their developers. In every other respect, augmented teams are extensions of - part of - your team.
Hiring developers is always a 1-to-1 proposition. Actually, with the entire onboarding process, it’s a many-to-1 proposition. Finding an IT staffing agency you can trust is a 1-to-many proposition. You’ll still be able to screen and interview each prospective candidate, but you’ll save 80% or more of the time associated with hiring each developer directly.
It’s not difficult to cultivate a closely-knit team, especially with startups. It doesn’t happen overnight, but there are a few things that you can do to hasten it. This starts with getting to know everyone in your startup on a first-name basis. Greet them in the morning, wish them a good night in the evening and thank them for their work. This goes for all team members, employees, freelancers, outsourced developers. Then, do your best to introduce them to everyone else.
To assist in this, it can be helpful to showcase all team-members in a section of your Employee Handbook. Share their name, what they do (job), picture, and let them add a short note or two (favorite quote, pet peeve, bit of background), and link to their LinkedIn profile.
There’s a lot more ground to cover, so we’ll keep this one short and cover it in more depth in our next blog post.
Not the easiest thing to do, but valuable to cultivate for all social interactions. The first step here is simply making your team aware that you have an “open door” policy. If they need to talk, about “anything” - that you are there for them. Obviously, they may need to wait if you are already talking with someone, in a meeting, or engaged. Also, “anything” can be far-ranging, suffice that it’s probably about their work, job, conditions, or intervening situations impacting their work.
Answer the things that you can that are related to their job and work, but for everything else, you really just need to listen and point them in the direction of appropriate assistance. The main thing here is to give them your full, undivided attention. Move everything aside, keep eye contact, acknowledge what they are saying. Ask questions to clarify. They may just need to rant, vent, or talk through their problem. Where appropriate, instead of providing a direct answer to their problem, ask questions to help guide them to that answer. Admittedly, this is vague and broad in nature, but sometimes people just need to talk.
Trust is a critical part of any team. It can be difficult as a manager because you are the critical connection between your company and your team. Sometimes their interests and priorities can be very different. Without the company, your team will be without jobs. Without your team, your company will probably lose clients. Your role to look out for the interests of both. The only way to do this without causing more problems to be honest with everyone without casting a bad light on anyone else.
Few occasions make this more difficult than when a company’s executives make “unpopular” decisions. It should also be said that it is also management’s role to provide their executives with objective data to drive sound decisions. It may warrant an extra diplomatic effort to offer better alternative options. At the end of the day, the manager must support the company and implement executive decisions to the best of their ability. The best case is to try to understand the full picture driving the decision. Discuss with your team to find the best pathway to success. Complaining about it or getting negative helps no one.
We can keep this one simple. Your role is complex and at times you may feel overwhelmed. If you feel overwhelmed all of the time, there’s a good chance that you’re trying to micromanage too much. Many Agile Teams are capable of self-managing or are otherwise highly decentralized. Code reviews, retrospectives, standups, and other work processes make it so you don’t always have to be checking in on them.
If your plate is too full - prioritize what needs to be on it. Look at the task and consider which of your team members might enjoy it or benefit from it (i.e.training), and see if they can spare some time for it. If you have a task that you hate and no one else wants to do it either, outsource it if you can. Failing that, find a way to make it fun or incentivize it so that someone might actually want to do it just for the perks.
Early on, you may have very limited resources to support a career development or continuing education program for your developers. However, you still have a lot of tools at your disposal - code reviews, daily standups, retrospectives, and mentoring, for starters. There are a lot of programming languages so you might pair a developer strong in C# with little time in Java with another developer strong in Java but still learning C#. Include a “coding tip of the day” at the end of each standup.
The other thing you can do is point your developers to free and low-cost online courses, like the Open Education Consortium, MIT Open Courseware, EdX, Udemy, or other sites. For the long-term, you might incorporate some of the free “courses” into your own company training programs - starting out small but adding and refining as you go. If there are skills you know your team is going to need later, get them started. You might incentivize participation by sharing the cost or allow some training or study on the clock.
Always be open to finding new ways to *improve the quality of your work” while also making it easier, faster, and less expensive. This requires knowing the baselines for anything you’re trying to improve. You also want to examine how much effort any change will require to assess the ROI for the change. Welcome suggestions from your team members. You can also delegate a product/service review or analysis to one of your team members.
Before implementing a change, have other team members try it out to see if they like it. If a change maintains or increases work or output quality, people like to use it, and it’ll clearly save money in the short-mid term, it’s worth it. Try to always have one project under evaluation on a “time as available” basis.
It’s tempting to place this a lot higher on the list. But, if you spend just 15 minutes a week interacting with other departments you’re doing more than most other tech managers. A little bit of your time can go a long way.
- If you see important technical news about your industry or competition, share it with your executives. Take a moment to explain the ramifications, if necessary.
- With sales and marketing, let their manager feel welcome to approach you for technical explanations and wording in brochures, PowerPoint presentations, etc. All the right words in the wrong order can kill a lead.
- Invite your company’s blogger to ask you technical questions or co-write articles for you or your team members. See what they’re writing about next and come up with a quote or two for them to use.
- Check-in with operations and let them know you’re happy to assist them with any tech-related issues. You can answer questions, inform them of automation options, point them in the right direction. They’ll be responsible for implementation, but time available, your team might be able to provide assistance.
Thing is - a specialist can sometimes do in 15 minutes or an hour what could take a generalist all day. A generalist might know there are solutions available to make their jobs easier, i.e. to automate certain tasks, but lack the technical know-how to do it. This point is simply asking you to be a good neighbor.
Far easier said than done, but “Do It!” You’re going to have tough decisions to make. The higher up you are on the corporate ladder, typically the fewer decisions you will have to make - but their importance carries far greater weight. At some point, too, you really want to transition from thinking about “today” and plan more for the future.