Website Deployment  «Prev  Next»
Lesson 2 Role and responsibilities of the technical team
Objective Describe the role and responsibilities of the technical team.

The Pivotal Role of the Technical Team in Web Development Projects

The digital landscape is dynamic and complex, with each phase of a web development project being a bridge to the next, ensuring the seamless transition of ideas into tangible, functional solutions. In the early stages of such projects, the business and creative teams stand at the forefront, interpreting the client's vision, setting strategies, and laying the foundation for the design and execution that follows. But as we move into the design phase, the narrative shifts. The technical team emerges, not just as contributors, but as pivotal links connecting the intricate web of client, design, and development. Here is why the technical team's role is so crucial:
  1. Translating Vision into Reality: The initial discussions might produce grand visions and intricate designs, but it's the technical team's responsibility to map these concepts onto a feasible framework. They ascertain the technological feasibility of design choices, ensuring that the final product is not just aesthetically pleasing but also robust and functional.
  2. Bridging Gaps with Expertise: Web development projects are riddled with technical nuances that might elude the uninitiated. The technical team, equipped with specialized knowledge, becomes the interpreter, elucidating these intricacies to both the client and the creative team. They bridge the gap between what's desired and what's achievable, often suggesting alternative solutions that align with the project's goals.
  3. Setting Realistic Expectations: It's natural for clients to have ambitious goals for their digital platforms. However, every idea comes with technical implications, some easy to implement, others more challenging. The technical team ensures that all stakeholders have a clear understanding of the scope, timelines, and potential challenges, thus preventing future surprises and misaligned expectations.
  4. Risk Management: Every project carries potential risks, be it in terms of security, scalability, or performance. The technical team, with its keen eye for detail, identifies these risks early on, proposing mitigation strategies and ensuring that the project doesn't veer off course.
  5. Collaborative Problem Solving: Challenges are inevitable. But with the technical team involved, solutions emerge collaboratively. They work in tandem with the design and business teams, ensuring that issues are tackled holistically, keeping in mind both the client's vision and the project's technical constraints.
  6. Ensuring Seamless Transition to Development: Once the design phase concludes, the project must transition smoothly to development. The technical team's early involvement ensures that designs are already aligned with development capabilities, making this transition seamless and efficient.

In essence, during the design phase of a web development project, the technical team acts as the keystone, ensuring the arch of ideas, designs, and development stands strong and true to the client's vision. They're not just implementers; they're enablers, collaborators, and guardians of the project's integrity. It's through their expertise that visions transform into digital realities, making their role absolutely indispensable.

Web Development Teams

Difference between a Technical Team and Development team

The terms "technical team" and "development team" can often be used interchangeably in many contexts, but there are subtle differences based on how organizations structure their teams and define roles. Here's a breakdown:
  1. Development Team:
    • Focus: Primarily concerned with writing, testing, and maintaining code. This team is directly involved in the development of software or products.
    • Roles: Typically includes software developers, programmers, software engineers, QA testers, and sometimes product owners or scrum masters in agile environments.
    • Activities: Coding, debugging, unit testing, integration testing, code reviews, and sometimes deployment.
    • Goal: To build and enhance software features, fix bugs, and ensure the software meets its functional requirements.
  2. Technical Team:
    • Focus: Can encompass a broader range of technical activities beyond just development. This might include infrastructure, system administration, network management, and other technical support roles.
    • Roles: Could include system administrators, network engineers, DevOps engineers, database administrators, IT support staff, and yes, software developers as well.
    • Activities: Besides development, this might involve server management, network configuration, cybersecurity, database management, technical support, and sometimes even hardware maintenance.
    • Goal: To ensure the entire technical ecosystem (including software, hardware, and networks) operates smoothly and supports the organization's needs.

Key Differences:
  • Scope:
    • A development team's scope is usually narrower, focusing on software creation and enhancement.
    • A technical team might have a broader scope, covering all technical aspects of an organization, including but not limited to development.
  • Composition:
    • Development teams are more homogeneous, mainly consisting of roles directly involved in software development.
    • Technical teams can be more heterogeneous, including roles that support the development process but aren't directly involved in coding (like IT support or system admins).
  • Overlap:
    • There's significant overlap, especially in smaller organizations where a "technical team" might simply be a broader term for everyone involved in tech-related roles, including developers.
  • Context Dependency: The distinction can be highly dependent on the context of the organization. In some companies, "development team" might be a subset of the "technical team."
In practice, especially in smaller or less formally structured organizations, these terms might not have a clear distinction. However, in larger or more specialized environments, understanding these differences can help in defining roles, responsibilities, and team structures more effectively.


Technical Team must understand the Client's Hardware Capabilities

You have learned in previous courses in this series that during the Discovery and Definition Phases of a web development project, it is the business and creative teams that communicate with the client. During the design phase, the technical team becomes an important link between the web team and the client. On the one hand, the technical team must understand the client's hardware capabilities and future needs. On the other, because of the potential implications of the selected hardware on the multimedia content and other programming aspects of the Web site, the technical team must be aware of the needs of the creative and business teams. In some ways, at this stage in the process the technical team is a bridge between the rest of the Web team and the client, trying to understand and meet both sides' needs and desires. The following series of images below illustrates this process:

1) The business and the creative teams inform the technical team of their needs.
1) The business and the creative teams inform the technical team of their needs.

2) The technical team writes the requirements definition, which states the site's hardware requirements, and then contants the client's IT staff.
2) The technical team writes the requirements definition, which states the site's hardware requirements, and then contacts the client's IT staff.

3) The IT staff studies the Requirements Definition, then makes the final decisions as to what hardware is, or will be, available for the website project.
3) The IT staff studies the Requirements Definition, then makes the final decisions as to what hardware is, or will be, available for the website project. They communicate those decisions to the technical team.

4) The process requires some back and forth between the IT Staff and the technical team. After everything is settled, the technical team designs the network architecture.
4) The process requires some back and forth between the IT Staff and the technical team. After everything is settled, the technical team designs the network architecture. As a visualization tool, the network architecture is useful in ensuring that the needs of the site and the resources available for it are understood by the team as well as the client.

5) The technical team must inform the creative and the business teams of any decisions that may affect their work, for example, whether the final hardware decisions impose limitations on the web page size.
5) The technical team must inform the creative and the business teams of any decisions that may affect their work, for example, whether the final hardware decisions impose limitations on the web page size.

6) Good team work will result in a successful web site deployment
6) Good team work will result in a successful web site deployment.

Roles and Responsibilities

Because they are a team, software teams are assigned a team leader. This post may have different names in every organization, but the main and common responsibility of this person in all organizations is product delivery. What varies is the scope defined for the responsibility of product delivery. At one extreme, this person is just responsible for the technical effort of design and development. It may include design and development as well as collaborating with customers, team operations, reporting to senior management, and strategic product management. This module will lay out the responsibilities of a Technical Team Leader. Knowing the responsibilities is better than not knowing, and that is why it is important to lay the necessary ground work for your the project team. We may determine the necessary characteristics of such a key person in software development. First, I will point out several deficient views of a technical team leader, and why these views are incomplete and may not lead to team success. Then, I will categorize all the necessary responsibilities to be carried out by a technical team leader. Finally, I will discuss other functions in a typical software organization, and will explain why we should not overwhelm the team (and its leader) with such responsibilities.

  1. The business and the creative teams inform the technical team of their needs.
  2. The technical team writes the requirements definition, which states the site's hardware requirements, and then contacts the client's IT staff.
  3. The IT staff studies the Requirements Definition, then makes the final decisions as to what hardware is, or will be, available for the website project.
  4. The process requires some back and forth between the IT Staff and the technical team. After everything is settled, the technical team designs the network architecture.
  5. The technical team must inform the creative and the business teams of any decisions that may affect their work
  6. Good team work will result in a successful web site deployment.

Deployment to Staging

When the deployment to staging occurs, a team is assembled to perform it. Sometimes this team has all the necessary skills, but often in very large organizations the responsibilities for deployment are divided between several groups. DBAs, middleware teams, web teams, and others all take a hand in deploying the latest version of the application. Since the various steps have never been tested in staging, they often have errors. The documentation misses important steps. The documentation and scripts make assumptions about the version or configuration of the target environment that are wrong, causing the deployment to fail. The deployment team has to guess at the intentions of the development team. Often the poor collaboration that causes so many problems in deployment to staging is shored up with ad-hoc telephone calls, emails, and quick fixes. A very disciplined team will incorporate all of this communication into the deployment plan, but it is rare for this process to be effective. As pressure increases, the defined process for collaboration between the development and deployment teams is subverted, in order to get the deployment done within the time allocated to the deployment team. In the process of performing the deployment, it is not uncommon to find that incorrect assumptions about the production environment have been baked into the design of the system. For example, one application we had a hand in deploying used the filesystem to cache data. This worked fine on a developer workstation, but less well in a clustered environment. Solving problems like this one can take a long time, and the application cannot be said to have been deployed until they are resolved. In the next lesson you will learn what the function of the Site Planner is.

SEMrush Software 2 SEMrush Banner 2