anchor
Freshcode
  /  
Insights
  /  

How To Scale an Engineering Team Like a Boss

How To Scale an Engineering Team Like a Boss

Last updated:

November 15, 2021

10 min read

Business

By

Artem Barmin

Technology Evangelist

Alexandra Lozovyuk

Content Strategist

Contents

See more

This is some text inside of a div block.

High demand is a long-life dream for every business. But one of the most epic pitfalls is the inability to keep up with rapidly growing demand. Before you know it, you've lost your customers, vendor relationships, and a good reputation too.

Every company looking forward to a bright future should be ready for growth. Today we'll talk about scaling an engineering team that is crucial for every digital company.

You'll face several important questions to consider. What team structure fits your project? What roles do you need? How to maximize the effectiveness and minimize costs without compromising the quality?

Spoiler: there is no formula, panacea, or one-stop solution that will make everyone happy and successful. The most experienced entrepreneurs make missteps, learn from them, and innovate their approaches.

So, you just need to be prepared and be aware. Forewarned is forearmed! (we love rhymes and proverbs so much)

TL;DR
  • Engineering teams need diverse roles working together: developers (frontend/backend/full-stack), tech leads for technical guidance, QA engineers for testing, project managers for scheduling, and business analysts for validation and risk assessment
  • Three scaling approaches: dedicated teams (experienced but pricey), internships (test before hiring but uncertain), and freelancers (cost-efficient but high turnover and potentially divided attention)
  • Tim Howes' five dimensions of successful scaling: understand your PEOPLE (balance oracles vs prophets, firefighters vs fire marshals), structure HIRING/ONBOARDING carefully, maintain ORGANIZATION through vertical teams, scale COMMUNICATION (formal and informal), and codify QUALITY through checklists and reviews
  • Scale when customer demand exceeds capacity (outsourcing companies) or when product timelines require more resources (product companies)—no one-size-fits-all solution, constant reinvention required
  • Engineering knighthood: Team structure and core roles

    What is an engineering team in software development? In short, it's a group of tech and often near-tech specialists (including developers, QAs, managers, etc) responsible for the building of the given service or product. These guys are the ones carrying out all sprints and working on features, updates, and bug fixes.

    Tech companies have vastly different business needs and therefore vary engineering roles from one to the next. They support one another and collaborate closely throughout the production process.

    e strength lies in the union.Η ισχύς εν τη ενώσει.
    Aesop
    Ancient Greek fabulist

    So there is no canonical software engineering org structure. It can be various combinations of developers, software architects, managers, team leads, designers, QA specialists, and rest.

    Let's highlight key engineering roles and figure out why are they so important for your product development.

    1
    Software developer/Software engineer
    Nowadays programmer is no longer lone wolf. Today's tech culture tends to agile frameworks and close collaboration between developers. You can scale your engineering team with frontend, backend, or full-stack developers depending on your needs.

    Pay attention to the soft skills of your employees to be sure they can become a part of the team and maintain effective communication. Deep expertise in a particular tech stack is essential but open-mindedness and willingness to learn new things are equally important. Сonservatism is often necessary but not in the context of expanding a skill set.
    2
    Tech Lead
    The tech lead is the master of troubleshooting technical issues regarding software development, engineering, and product release. He or she always backs up a buddy, pats on the shoulder, and gives professional advice.

    Tech leads are experienced developers with management responsibilities. They should be skilled to effectively lead a team, consult and collaborate.

    Types and levels of tech lead roles vary from company to company as team structure is always unique to specific business needs and goals. A small startup doesn't require the same kinds of management roles as tech giants in Silicon Valley.
    Over 50 people, if you're not formalizing roles, everybody thinks they're a tech lead. And that gets bad.
    Tim Howes
    American computer scientist,
    and entrepreneur
    3
    Quality Assurance Engineer
    Quality Assurance specialists are responsible for testing the products and new updates. Every new feature must be properly reviewed and tested to ensure its quality.

    QA engineers don't work on the initial build that is carried out by the developers, but often they need to write code for testing purposes. Also, they work with documentation to review and prepare requirements, specifications, test plans, test cases, reports, etc.
    4
    Project Manager
    Project managers take care of the team management, keep an eye on deadlines, and сreate clear scheduling.

    Talented and skilled PM can unblock tricky situations, eliminate bottlenecks and deal with any issues — such a hero of the day!

    Without a PM, you have to keep all communication with a team and clients and expect surprising calls at any time of day or night. Experienced project manager on your engineering team board will take this burden from our shoulders.
    5
    Business Analyst
    Deep validation of your ideas. Business niche analysis. Reducing risks. Project estimation. All these processes are made possible thanks to BA's efforts and talents.

    Business analyst in your team is key to:
    • competitor analysis
    • best technology stack, development methodology, and resources for your budget
    • SRD development, including project risk assessment, cost estimation, feature list & mockups, etc.

    Where to look for engineers to scale up?

    "I'm not the smartest fellow in the world, but I can sure pick smart colleagues". A good team is a key to success. Mindset matters. Software engineering culture matters. And putting together the right team is the real art of management.

    Where to look for engineers to scale up? Let's highlight the 3 key approaches: dedicated team, internship, and freelancers.

    icon
    Dedicated Team
    Pros:
    • No need to train your team
    • The engineering team's tech knowledge, domain expertise, and professional experience can bring better results to your project
    • Reduces time commitment and frees you of the need for day-to-day managing
    • The team can support your product/service with troubleshooting after the project is finished
    • Increased development capacity

    Cons:

    • Low efficiency for short-term projects
    • Relatively high price
    icon
    Mentoring & Internship in Company
    Pros:
    • Test out an employee before committing to hiring
    • Competitiveness and strong applicant pool
    • An extra set of hands to help finish projects

    Cons:

    • Not every intern is mature and there is no guarantee you'll have enough specialists
    icon
    Freelancer
    Pros:
    • Hiring a tech specialist for part-time
    • Cost efficiency
    Cons:
    • High turnover
    • Multiple projects at once: freelancers can be overwhelmed with other projects besides yours and the output could be subpar to your expectations

    Softmate is wanted: hiring the right people

    No matter how smart and driven you are, your success depends on your ability to:

    • create a team
    • inspire a team
    • work well together toward a common vision

    For advice, we turned to Tim Howes, an American computer scientist, angel investor, and entrepreneur. This scaling guru pivots companies, onboards whole teams, expands them in the shortest possible time, and performs it masterfully.

    In this section, we start considering five dimensions of scale by T. Howes — the five key points you need to know to scale like a boss.

    I've scaled engineering teams in various stages of euphoria and horror.
    Tim Howes
    American computer scientist
    and entrepreneur

    PEOPLE: Be an expert on your team (especially its weaknesses)

    The strength of the team is each individual member. So let's consider here some interesting team archetypes according to T. Howes:

    The oracle VS the prophet

    Almost every team has that character — a bearded battle-tested engineer who has been there since the beginning. Such an oracle to whom people come for advice.

    But not by beard alone: wise programming sensei is undoubtedly invaluable, but you also need people "who are more like a prophet", Mr. Howes says. Companies are interested in the evangelical style of someone who doesn't sit back and wait for people to come to them.

    Reading moon letters on Thrór's Map or prophesying like a Velva — talent to predict future tendencies is anyway a unique skill. Sharing new ideas with a team and building a development strategy are great benefits for a company. It helps to create an innovative, open-minded company culture and expand business horizons a lot.

    The firefighter VS the fire marshal

    Engineering teams are very good at putting out fires. And those merry men who respond quickly and keep a grip on themselves are appreciated.

    But If you want to get out of such a reactive mode and prevent issues and force majeure in the best possible way, you need to expand your fire brigade staff. "As an organization matures, you understand the need for a fire marshal".

    As you scale your engineering team, find specialists who are eliminating the causes of fires, not just putting them out.

    There is room in your company for different roles: multi-armed Shiva, inspirer and prophet, wise elder, and rebel. Don't be too conservative and be ready to reevaluate your business needs and adjust your organization's hierarchy.

    HIRING AND ONBOARDING: Don't ignore your biggest investment

    The ability to focus on every stage of hiring, from searching to integration, will save your time and energy. However, not all companies give due consideration to it.

    To quote Tom Howes, many businesses often put the hiring and onboarding on autopilot. Thus, the vital company processes that can't possibly go perfect become even more chaotic and ineffective.

    Your key task is to structure these processes as smart as possible. Make it a talking point in meetings and demonstrate its value. You need to:

    • Structure interview panels
    • Analyze data from your hiring funnel
    • Make integration thoughtful and keep an eye out for hiccups in your onboarding process to understand employee's dissatisfaction before it becomes critical

    Important: Here you can download Freshcode's eBook "Fast Track Developers Onboarding" for free and find some tips that will help you.

    Here you can download Freshcode's eBook for free and find some tips that will help you.
    Enjoy the book

    Long live the team: How to keep growing

    ORGANIZATION: Cultivate order early to bypass chaos

    No doubt, leading a team of 10 people is very different from leading a team of 100+ people. The more people you have, the more crucial it is that you organize them consistently.

    When it comes to scaling engineering teams, T. Howes advises vertical teams and so-called units.

    In the 18 months, I was at Yahoo, we grew from about 150 people to 350. The only reason that we could do that and continue to ship products and maintain any sense of sanity, was because we had many small teams that shipped mostly independent products.
    Tim Howes
    American computer scientist
    and entrepreneur

    Vertical is not the only way to go. The horizontal organization can be effective in other situations. The main thing is to formalize the role of management and fill it thoughtfully. Equip every team to get a product off the ground, from engineering to QA to product management to marketing.

    COMMUNICATION: Make peace with repeating yourself (Ad Nauseam)

    Communication is what makes teams strong. Communication is what builds trust. At the same time, maintaining effective communication is one of the most difficult tasks in the company.

    The time will come when you'll reach a size when coworkers won't all know each other. In a team of 8-15 people, communication is interactive. You spend less time crafting your epistle message because you deliver it in a dynamic way. But then things change.

    Scaling communication is not just about your morning dispatches to the team. As growth picks up speed, you need to foster regular interaction, including both formal and informal opportunities.

    Vary internal formal communication with code reviews, architecture reviews, and demo days. It helps the company know how things ear going on.

    What about informal events, they are no less important. "Once your organization passes a dozen, the whole team isn't having lunch together anymore". Brown bag sessions, beer bashes, theme parties, quizzes, and travel activities — just think outside the box for unusual ways to improve your team interaction.

    QUALITY: Don't leave it to chance

    Finally, the 5th dimension of scale, Her Majesty Quality. With scaling up, keeping a close eye on quality becomes exponentially more challenging.

    Howes recommends the following rules to every engineering leader:

    • Gather feedback about product/service quality via sending emails to all who had quality problems that day/week.
    • Make a release checklist
    • Codify an ever-increasing pool of knowledge into a checklist, a set of boxes each product team must check before any release
    • Implement code reviews, functional tests, unit tests to structure the code well

    Sound of the horn: When is time for scaling team

    Either your customer base is growing, or the stakeholders have new goals they want to implement as soon as possible — anyway, sooner or later, you will get to the point where you need to scale up.

    To know how to build a team that fits your needs at scale, you should understand the as-is state of your business.

    If you own an outsourcing company: The size of your team directly depends on the demand level. If you understand that there are more customers' orders than your existing team can address it's time to think about scaling and hiring tech specialists.

    If you are a product company owner: Your team and its technical expertise determine the speed of product delivery and its unique value proposition. Product companies might require scaling when more human resources are required to keep on track and don't miss timelines.

    So put together your Fellowship of the Ring where every team member complements each other.

    There isn't really a one-size-fits-all solution. Things will always break. The real key is to stay self-aware, all the time, so you can identify those broken things and address them. Scaling is a constant process of reinvention.
    Tim Howes
    American computer scientist
    and entrepreneur

    Takeaway

    If you're scaling your engineering team, it's because either your product is getting bigger or you're adding new products/services/features. Either way, you'll be juggling many different teams working on many different things. And the main thing is to do it harmoniously and cleverly without dropping any of them.

    Synergy — the bonus that is achieved when things work together harmoniously.
    Mark Twain
    American writer and entrepreneur

    At Freshcode, we are helping business unleash their potential through open ways of working and collaborating. And we have expertise that helps us to find individual solutions for every company regarding its needs and opportunities.

    We are ready to consult you on how to scale your engineering team — please, fill our contact form.

    FAQ

    What is an engineering team?

    A software engineering team is a group of tech specialists responsible for the building of a given service or product. It carries out all sprints and works on features, updates, and bug fixes.

    Different engineering team structures have different benefits and drawbacks. There is the so-called triad of main team patterns:

    Technology Team

    • focused on a waterfall approach
    • emphasis on technical specialists over a more cross-functional team
    • slower speed to market for new products and updates

    Product Team

    • an agile approach to production (Scrum)
    • emphasis on a cross-functional team setup
    • fast deployment time

    Matrix Team

    • closer collaboration within the cross-functional team
    • improved time-to-market
    • deepening the team's business domains knowledge

    Nowadays, companies are "tweaking the triad" and customizing team structures to fit their business needs.

    What is outsourcing in software engineering?

    Outsourcing software engineering empowers businesses to connect with the best tech specialists, no matter how many miles and time zones lie between them. Outsourcing can be a suitable solution both for short and long-term projects (even if you have an in-house development team).

    The common benefits of outsourced software engineering are the following:

    • Cost & time savings
    • Reduced Time-To-Market
    • New tech knowledge pool
    • Minimized risks and recruitment costs
    • Clear outlined deadlines and outcomes

    How Freshcode can help you scale your team?

    Every partnership is a unique process and we prepare an individual scaling strategy for clients.

    Initial consultation with a Freshcode representative is free. It allows you to get basic recommendations on how to scale your engineering team and gain a better understanding of your business needs and perspectives.

    Key facts about Freshcode:

    • 100+ subject-matter experts
    • End-user oriented team
    • Offices are 1-2 flying hours away from most European countries
    • Moderate rates
    • Flexible partnership models
    Build Your Team
    with Freshcode
    Author
    linkedin
    Artem Barmin
    Technology Evangelist

    15+ years in software development, with a strong functional programming background. CTO and low-code enthusiast focused on building reliable, scalable systems.

    linkedin
    Alexandra Lozovyuk
    Content Strategist

    With a passion for technology, business ideas and storytelling, bridges the gap between technical concepts and engaging narratives. Writes catchy texts and explores design and marketing trends to find the best experiences to implement.

    Share your idea

    Uploading...
    fileuploaded.jpg
    Upload failed. Max size for files is 10 MB.
    Thank you! Your submission has been received!
    Oops! Something went wrong while submitting the form.
    What happens after
    you fill this form?
    We review your inquiry and respond within 24 hours
    A 30-minute discovery call is scheduled with you
    We address your requirements and manage the paperwork
    You receive a tailored budget and timeline estimation

    Talk to our expert

    Kareryna Hruzkova

    Kate Hruzkova

    Elixir Partnerships

    Our team scaling strategy means Elixir developers perform from day one, so you keep your product on track, on time.

    We review your inquiry and respond within 24 hours

    A 30-minute discovery call is scheduled with you

    We address your requirements and manage the paperwork

    You receive a tailored budget and timeline estimation

    elixir logo

    Talk to our expert

    Nick Fursenko

    Nick Fursenko

    Account Executive

    With our proven expertise in web technology and project management, we deliver the solution you need.

    We review your inquiry and respond within 24 hours

    A 30-minute discovery call is scheduled with you

    We address your requirements and manage the paperwork

    You receive a tailored budget and timeline estimation

    Looking for a Trusted Outsourcing Partner?