How many developers does it take to build a chatbot? Would you be surprised if I told you that developers are not the most important role on a chatbot project team? In this post we go through the who to the what, where the what is a chatbot project and the who is you!
Core team
You got your business people and your technical people. They really do require two very different sets of skills, so one person shouldn’t be doing both jobs. These guys are required for a business chatbot project. While one person can do multiple jobs, that one person has to be incredibly talented.
Business Team Members
Business people do business things. They do not write code or manage infrastructure.
Executive Stakeholder
The executive stakeholder usually is a director, VP, or higher. They are the team’s advocate among the company’s leadership, and must be believers in the project’s value. They are mostly involved at the beginning of the priject, and at critical milestones. For the chatbot team, their main responsibilities are:
1. Dictate requirements
Executives are in touch with the company’s needs and strategic goals, so they know best how the chatbot can provide outstanding value to the business. They need to communicate these needs clearly to the team and guide them towards a problem that is both possible for a chatbot to solve, and a clear pain point for the business or their customers.
2. Allocate budget
Chatbots, unfortunately, do not fall from the sky - dedicated teams need to take time and effort to build them. Executives are key to unlocking these resources for the chatbot project, and they can come in the form of external contractors, new hires, or existing employees.
3. Sign off on project milestones
As the primary stakeholder, executives get the final say on whether requirements are truely satisfied or not. They have the power to declare features complete, or send them back for revisions.
4. Shelter and protect the team
All companies have their politics which can distract the team from their core task. A good executive insulates their team from these politics, and protects the team from new requirements, employee reassignment, or resource reallocation.
Project Manager
The project manager is the center of the chatbot team, and the success of the project ultimately lies with them. A good project manager knows how to work with people from every part of the company, and never tires of building consensus and alignment between team members. For the chatbot team, they are responsible for:
1. Coordinate work between team members
After requirements have been drafted, and milestones set, somebody needs to make sure that each person on the team knows what their part is, and somebody needs to check in on them to make sure things are going smoothly. The project manager is this person, and coordinating team members will take up most of their time. They might schedule regular standup meetings with the team or communicate asynchronously through Jira tickets. When meetings happen, the project manager needs to be the one taking notes and sending follow ups about action items.
2. Build consensus among the team
A team of 3 people will have 4 different views on every issue, and a project manager needs to find one that everybody can agree upon. This must happen for both big descisions, like project requirements and milestones, to smaller one like the bot’s persona and branding. Project managers need to identify key stakeholders to give approval, and key team members to notify.
3. Report project status to key stakeholders
While the executive is ultimately responsible for keeping a project alive or stopping it, a good project manager can make their job easier by providing regular reports about the project and its progress. Especially as the project begins testing with internal or external users, executives are keen to see their investments take off, and a solid project manager makes sure that they are the ones bringing news to stakeholders in order to insulate the rest of their team from distractions.
Quality Assurance Tester
A quality assurance tester provides essential domain expertise and can assure stakeholders that a project is meeting its requirements. They are typically veteran employees that have deep knowledge about the business and the subject matter that the chatbot is dealing with. Quality assurance testers represent users while they go throught the bot and check its performance. Quality assurance testers typically join the project team later, and their responsibilities are:
1. Provide domain expertise
Every industry has its quirks and norms that might not be obvious or written down, and the quality assurance tester knows this. They have a deep expertise in the subject matter that all team members can take advantage of to ensure that the chatbot gives correct information and follows the correct processes.
2. Gather test data for developers
While developers do test their own code, they do not always do so to the extent that a dedicated quality assurance tester can. Developer are also biased testers; they already know what works and what does not work, so they tend to explore less. The quality assurance tester, however, explores more and uses the same mindset as real-world users in their interactions. This helps uncover crucial exceptions and edge cases that might have been otherwise missed.
3. Ensure requirements are being met
The best quality assurance testers are detail-oriented and can check a chatbot’s performance against requirements to the letter. Because of this, they are trusted by stakeholders, and when they say a project passes all requirements, it carries weight. Conversely, if a project is not meeting its requirements, the quality assurance tester can tell the project manager exactly where and how the chatbot is falling short.
Conversation Designer
The conversation designer balances creativity with branding and business needs to write content for the bot to share with users. They are a specialized kind of copywriter who specialize in task-focused dialogue, and they are usually most involved at the beginning of a chatbot project. During that time, their responsibilities are:
1. Translate project requirements into user journeys
A conversation designer can begin with a requirement like “Users must be able to schedule a follow up phone call with a salesperson” and break it down into a series of prompts, confirmations, fallbacks, and follow up questions. They often use flowcharts or other rapid prototyping tools to build mock-ups of what a final conversation could look like, and its various permutations.
2. Write bot content
The conversation designer will also write all of the bot’s scripted content. This includes greetings, farewells, thank yous, prompts, fallbacks, and more. A simple chatbot can easily have over 100 different messages to send to users, and a conversation designer writes them all.
3. Ensure adherance to brand and business voice
Chatbots are an extension of the company, and they need to act like it! A conversation designer is also responsible for ensuring that the user experience with the chatbot aligns with the company’s existing voice and brand, and is appropriate for the situation.
Technical Team Members
These guys code. While you can have your developer do data things, it really is better to have a separate data person, as that keeps the developer’s attention from getting split up among many domains.
Developer
The developer is the person who writes the code that powers the bot. They are an experienced software engineer who is comfortable with web technologies and knows the company’s internal software and tooling. Along with the project manager, they are the ones working day in and day out on getting the chatbot project across the finish line, and their day to day responsibilities include:
1. Build the bot
Developers leverage their preferred tools and platforms to build the chatbot and its underlying logic. Depending on what tools and platforms the team is using, “building the bot” could mean spending time in a web-based graphical editor, or writing code in the developer’re preferred editor.
2. Integrate with other software and platforms
Does the company use a CRM? Host knowledge articles in a database? Share a calendar between teams? If the chatbot needs to access this data, then the developer needs to build an integration to power that. Depending on the tool, integrations can be easy or difficult to build, and generally the fewer that are needed, the better.
3. Write automatic tests
While the quality assurance tester is an integral part of the team, computers can run more tests more often and quicker. Automated tests can use tools like [Selenium]() or [Playwright]() to open a web browser and interact with the chatbot. They can also target small, specific parts of a bot’s logic and test integrations. A large catalog of automated test promotes product stability and prevents feature regression.
Data Analyst
Data gives chatbots superpowers, and the data analyst is the master of that domain. Data analyists know how business value is measured, and they can focus their lens on the chatbot to help ensure that the chatbot’s value gets recorded and included in reports. They also have deep knowledge about the business and its customers’ habits. As part of the chatbot team, their responsibilities are:
1. Collect and manage knowledge base
The chatbot needs to get its knowledge and training data from somewhere, and the data analyst manages that. This is a comlex job: information must be kept current, non-conflicting, unique, and highly available. It often involves coordinating with various experts throughout the organization to create or verify information.
2. Establish performance metrics and measurement processes
The data analyist can translate a vague requirement like “The chatbot must make it easy for users to open a ticket” and report it as “The chatbot has reduced the numebr of actions required to open a ticket from 12 to 4, and reduced the time to create a ticket by 65%.” The also help establish how data to support these metrics is collected and stored.
3. Generate reports for stakeholders
Being so close to the data makes the data analyst a natural choice to generate reports on chatbot performance. The best data analysts will not only include the bot’s metrics in these reports, but also zoom out to show the bot’s impact on the entire organization.
Other people you might interact with
# System Administrators | # Website Administrators | # UI/UX Designers |
---|---|---|
Deploy and maintain servers and containers, Establish DevOps and deployment piplines and processes | Embed the chatbot into the company websites, Oversee how information is passed from the webiste to the bot | Frontend developers who design the visual chat elements, Coordinate color palettes and design language among company assets |
# Legal and Compliance | # Cybersecurity | # Marketing |
---|---|---|
If your bot touches Personally Idenfiable Information (PII) they need to be involved, Information and liability in regulated industries | If the bot is dealing with non-public information or users’ private info, they need to be involved, Ensure secure access and control for bot and chat transcript information | Get the word out about your chatbot to internal and external audiences, Show how chatbot is impacting larger outreach activities |
One final thing to point out is that there is a reason they are described as roles and not as team members, and that is because it’s common for one team member to perform multiple roles. Some common combinations include: * Developer / Data Analyst * Conversation Designer / Quality Assurance Tester * Project Manager / Conversation Designer
Additionally, some larger bot projects will go in the opposite direction and have multiple developers, testers, etc. There is no one right team size for every project. Whether it’s 3 people or 30 people, one should generally strive for a balance of technical and business competance in the team. ❤️ Gordy