How to organize meetings to update the architecture of your projects in the development team when you are not a developer yourself
In modern business, constant growth creates new challenges that require effective solutions and tools for project control and management. In the context of dynamic development, maintaining and optimizing technical architecture becomes key to ensuring the stability and efficiency of business processes. The importance of high-quality communication and teamwork organization cannot be underestimated, as these factors help to achieve success.
We will analyze how to organize meetings to update the architecture of your projects in the development team when you are not a developer yourself. We'll also talk about what tools and practices you need to surround yourself with and what it will ultimately lead to.
How we solved the problem of project architecture optimization
One of the most important aspects of modern business is constant growth, which creates new problems and challenges. In this relentless movement forward, companies often face technical difficulties that require effective solutions and control to avoid financial risks. From our point of view, control over new solutions is key, ensuring stability, efficiency and growth of business processes without significant additional costs.
Our role in preserving and optimizing the project architecture
Our role was to preserve and optimize the technical architecture of the project. We focused on avoiding unnecessary expansions and costs, as well as implementing business process automation. This has increased the productivity of the company itself, as well as individual employees and departments. By using Trello for task management, Miro for architecture visualization, and Make for process automation, we were able to effectively optimize the project architecture and ensure control over its development.
Team coordination and architecture sustainability
In addition to the technical tasks, we also focused on team coordination, which allowed us to ensure the sustainability of the architecture and minimize the risks of its violation. Our goal was to manage resources, monitor task completion, reduce risks, and avoid duplicate work. This helped to optimize the functioning of the company's technical and business architecture, ensuring effective project management and the use of SAAS tools.
Consequences of not having a proper project architecture
Lack of proper project architecture can lead to a number of problems:
These problems can lead to significant losses and negatively affect the efficiency of the project and the company as a whole. We have implemented a clear and optimized architecture to avoid such problems and ensure stable business development.
Effective communication and task distribution in the team
We actively use Trello for effective communication and task distribution. Cards and lists in this tool allow us to clearly structure our work, ensuring task control and transparency of processes.
Each team member has access to up-to-date information about tasks and their progress, which improves team collaboration. We regularly hold mandatory bi-weekly meetings where everyone has the opportunity to present their tasks or prepare for new ones. These meetings serve as checkpoints that help us monitor progress and update tasks, which is an important part of project management.
Regular meetings and task transparency
Mandatory meetings are a key element of our project management approach. They allow each team member to describe their tasks in detail and update the "task log" that reflects our progress. This ensures transparency and helps new members to quickly get involved in the process, which contributes to effective task tracking. Our internal rules require a detailed description of tasks, which contributes to a better understanding and coordination of teamwork, improving team collaboration.
A comprehensive project management solution
Managing low-code/no-code projects requires control and transparency for both the internal team and the customer. We have developed a comprehensive management solution that combines technical and organizational tools to improve the efficiency and quality of project management. This solution was created not only to improve our own processes, but also to control the architecture and execution of requisitions for our clients.
Trello integration with Google Sheets
One of the key components of our solution is the integration between Trello and Google Spreadsheets. This approach ensures transparency in the execution of requests and their connection to the project architecture, which facilitates task control. Active use of Make helps automate the transfer of information between different services, which greatly simplifies the process of workflow optimization and task tracking.
Benefits of integration for project management
Such a comprehensive solution combines both managerial and technical aspects, ensuring optimal task execution, control over architecture, and transparency for the customer. This avoids rework, reduces risks, and ensures effective team collaboration among all project participants.
More about the solution and why it is important
So, first of all, we developed a defined technical architecture for the entire project. To do this, we used a tool called Miro, which allows us to create dashboards that detail all the elements we use. The main goal is to keep this architecture working as long as possible, avoiding unnecessary changes or extensions. This is our main guideline.
The next step is to control requests. In the process, many tasks are performed that may or may not affect the architecture. All these tasks need to be monitored by their nature in order not to break the existing functionality, and also to track their execution in order to understand when it is necessary to update the architecture - that is, to add new elements.
First of all, we used Trello to control all the requests. It's a fairly simple tool that allows anyone from the customer's team to understand how to create requests (tasks). We have different boards for different teams.
When a new requisition is created, we assess its impact on the architecture: we look at what can be affected by the execution of this requisition. This is the first point that reduces risk.
The second is that we collect all the completed requests in one table so that nothing is lost and then add the necessary changes to the architecture.
This process is automated using the Integromat platform, now known as Make. Automation is triggered when a card reaches certain milestones, such as Done or Launch status.
Completed cards (requotes) fall into the table within 14 days, and then we meet to describe in more detail what was done, for whom, and in which aset. This is more of a managerial part of the work. We meet with the team twice a month. The first time is to update a document we call "Update Log". All tasks are recorded in this document. And the second time, we make all the updates to the architecture.
The reason for this solution
The main reason for implementing this solution is the need to avoid duplicate work and improve process control. We want to avoid situations where we have to perform the same tasks twice or undo what we have already done. It's also important not to expand the architecture unless absolutely necessary, as this increases monthly costs.
Cost optimization is one of the main reasons
Statistically, medium-sized companies use 60 to 80 SAAS tools and tools that are needed to work in different departments. In our case, the customer has 56 paid tools that provide all the necessary functions of the company. To keep this number from increasing, and thus costs from rising, we keep track of them through the technical architecture.
For example, if tomorrow someone comes up with a new requirement or the need to automate a certain process, but this requires a new tool that is not currently in our architecture, we will not buy it just to solve one problem. It would be illogical and economically unprofitable. Instead, we try to solve the issue with the current tools.
If this is not successful, we propose to postpone the requisition to the Backlog for the future. This does not apply to situations where the requisition directly affects the company's earnings. If there are several more similar requests requiring the same tool in the future, we will reconsider this issue.
This approach allows us to conserve the customer's resources and avoid unnecessary expenses. This way, we can effectively manage the client's resources while providing project management and maintaining control over the processes. This contributes to architecture stability and workflow optimization.
When did we come up with the idea to create something like this?
The idea to create such an architecture came about when we realized the importance of having a clear understanding of how our project functions from the technical side. A technical architecture is necessary for every project to have a complete picture of its structure and components. It's especially important in a technical team, just as in a sales team, prescribed processes are important for effective work.
Conflicts at work are the main reason for creating such an architecture
The need for requisition control arose because of conflicts that occurred in our work from time to time. Often, employees would perform the same tasks twice or work on related tasks without knowing it. For example, one employee was working on a CRM system and didn't know what was happening on the website, which was being worked on by another employee who had a task between the website and CRM. It could be that a similar task had already been completed in the past, but due to the lack of centralized information, no one knew about it.
The introduction of architecture and description tables allowed us to store all the information in one place. This helps to avoid duplicate work and conflicts between tasks. As coordinators, we can see what has already been done and what changes might cause conflicts. Thus, we ensure effective team coordination and optimize our processes by using SAAS tools for task tracking and workflow optimization.
Risks and their minimization in project architecture
Each project has its own architecture, and sooner or later it will be necessary to return to the issue of risk mitigation. By the way, "mitigate" means to reduce risks, to put it simply. The main risk we have is the repeated performance of the same work or when one person does something that conflicts with the work of another.
We need to avoid such conflicts. For example, yesterday an acquaintance came to me and asked how to do a certain thing. We said we knew, but pointed out that a year ago they did something different, and if they do it in a new way now, they will destroy what has been working for a year.
Our task is to control this process
If we kept yesterday's case in our heads, then in the case of a tech maker, everything is kept on paper. There is a table that describes the architecture of the projects, which is updated by the team. The main thing is the team's work. We help organize meetings and processes so that everything works accordingly. This helps to avoid conflicts and ensure workflow optimization.
The key is risk management and project tracking. When each team member has a clear idea of what has already been done, what tasks are in progress, and how they affect the overall process, it reduces the likelihood of duplication of efforts and ensures effective teamwork.
An example of how the task management system works
To explain how our system works, let's look at a few practical examples. Our team has 5 task management boards. Each of these boards is structured into certain categories, such as SITE or CRM. On each board, work is performed daily, which includes processing requests from the customer or the customer's team, such as: "Fix the button", "Do this", "Something is not working". Every day, our team works on such requests, ensuring effective task tracking.
Managing tasks using tables
After completing tasks, the results are recorded in a table, which facilitates work and allows you to control processes. The table is the main tool for recording completed tasks, especially important requests.
Requests are divided into five main types:
- Bug - mistakes that need to be fixed.
- Fix Change Request - requests to fix changes.
- Change Request - requests for changes, for example, to change a button on the site.
- Feature Request - requests to add a new feature, for example, to add a new button to the website.
- Epic - large tasks that take a long time to complete, such as implementing new functionality.
An example of working with large tasks (Epic)
Let's look at the Epic example: the team is working on the "Event tracker" project, which is a completely new functionality. This epic extends our architecture in the same way as, for example, the company's transition from Google Meet to Zoom. Connecting and configuring Zoom according to the company's needs, with the necessary automations, is a big epic.
Our process is structured as follows: every two weeks, the team collects completed tasks in a list table. Then we meet once every two weeks, discuss the most important requests, and each team member explains what has been done. The initiator of the meetings reviews the work done to keep up to date and asks additional questions to better understand the situation. This helps ensure effective project tracking and task control.
Ensuring that new requests are in line with the architecture
The business analyst is responsible for reviewing new requests and ensuring that they are consistent with the existing architecture. If a request may violate the technical architecture, it can be rejected or discussed with the team to find the best solution. For example, if someone suggests switching from Google Meet to Zoom, the business analyst checks to see if this will harm the project architecture. If it does, the team doesn't take this request into consideration until all issues are resolved.
What works automatically and what needs to be done manually?
One of the useful features we use is extracting information into a table. First, Make pulls the data from Trello, and then the Google Script attached to the table makes an additional query and pulls additional information on the cards, including who created the card and when. This allows us to calculate the rate of closing cards. This function works automatically, does not require additional resources, and provides a lot of useful information.
Next, we have a dashboard in Google Sheets. On this dashboard, you can see all the quests, their descriptions, the number of tasks completed by each participant, and the total number of tasks completed for a certain period. This is a convenient tool that allows you to have an overview of the entire process, not just see a list of tasks.
We look at cards that took a long time to close, analyze the reasons for delays, and understand what mistakes were made, for example, by the team or management. This helps us evaluate the team's performance and identify where we can improve the process.
As for architecture in Miro, we transfer information manually. We tried to automate the process so that the data from the tables would automatically get into Miro, but it turned out to be inconvenient. That's why we work on the principle of culture first, automation second - that is, we describe everything thoughtfully on our own, and in the future we will automate the process when we see that automation meets our requirements.
Skills and knowledge used to create the project
Creating an effective task management system requires a wide range of skills and knowledge.
Here are the skills and knowledge that were applied during the project:
Project management and coordination
The main skill that was critical was project management. Regular meetings to update information are key to maintaining context and keeping the team productive. If these meetings are held once a month, the team loses context and forgets what they were doing before. However, short 30-minute meetings held every two weeks allow the team to clearly understand what is happening and keep tasks on track.
These meetings serve as checkpoints, as team members are able to update their task log at any time. If someone doesn't manage to do it on time, we do it together during the meeting. This approach motivates the team to understand the importance of completing architectural documentation and reviewing tasks, which is an important part of managing resources and monitoring task performance.
Technical skills and automation
The following technical skills were used:
Analysis of task types and team contribution
Particular attention was paid to the number of tasks by different types, such as bugs, features, change requests, etc. For example, in one case, it seemed that only one person was working, while in reality, it was not. The analysis showed that one of the participants received all operational requests, while others worked on large tasks. This helped to understand the real contribution of each team member.
Organizing meetings effectively
The ability to conduct meetings effectively is a must for a technical coordinator. The team must understand why they are meeting and why it is important to fill out architectural documentation, review tasks, and understand what the current project architecture looks like.
Describing the architecture from scratch
The most difficult stage was creating the architecture from scratch, when nothing was formalized yet. Once the architecture was described, everything else went much easier. Some questions may be irrelevant now, but we always try to find answers to them by providing technical solutions development.
Skills and knowledge used
- Project management: planning and holding regular meetings.
- Process automation: integration of tools for effective task management.
- Creating dashboards: data visualization and task control.
- Task monitoring: controlling progress and evaluating the contribution of each participant.
- Resource management: optimal distribution of tasks and avoidance of duplication of work.
- Technical solutions development: development and implementation of technical solutions to support the project architecture.
- Data visualization: creation of convenient and understandable dashboards for data visualization.
How did we test for bugs?
Our solution was tested in the process of its development. We worked on it iteratively, which means that at first we implemented minimal functionality - we just pulled tasks from Trello. Then we expanded it, added task descriptions, and transferred this information to the architecture.
Then we realized that we needed information about who created the card and when. We added this functionality. At this point, we stopped, but we plan to take further steps, such as studying where exactly we have delays in the execution of tasks at different stages of the process.
Our main goal is to understand how we can speed up the execution of tasks and deliver solutions more efficiently, not necessarily to speed up architecture updates, but simply to do the work more efficiently.
Make fully meets all the needs for transferring information from Trello to spreadsheets
In general, Make can fully meet the needs. However, if we only use Make, it will be very expensive. That's why we also use Google Apps Script, which is linked to our spreadsheet. Google Apps Script has a runtime limit of about 6 minutes. However, this is not a problem for us, as this script is quite simple and does not require a lot of time.
Additional solutions and steps to implement in the future
It's important to understand that working with architecture is not only a technical aspect, but also the organization of the team's work and the processing of requests. From a technical point of view, everything works as it should, but there is always room for improvement. Architecture management is an ongoing process that requires attention and adjustments.
Understanding and controlling contextual conflicts
One of our key tasks for the future is to better understand where we may experience difficulties. This includes a detailed study of contextual conflicts, when the work of one team member may accidentally change or override the work of another. For example, changes to the site that one team member makes and then another reverts back, resulting in unnecessary work. We plan to implement new methods to control and identify these conflicts at lower levels of the project.
Using new tools and methods
To further improve the project management process, we are considering the introduction of additional productivity tools and technical solutions. This will not only increase work efficiency, but also provide better monitoring of tasks and resource management. New tools will also help us better visualize data and facilitate decision-making based on clear and understandable information.
Continuous improvement of the architecture
Work with architecture never stops. We plan to continue to improve the architecture, ensuring its stability and compliance with current and future requirements. This includes regularly reviewing and updating existing systems and processes, as well as implementing new solutions that will help us achieve our goals.
As such, we have a clear plan for the future, which includes both the improvement of existing processes and the introduction of new methods and tools. This will allow us to stay at the forefront of project management and ensure the effective work of our team.
How to adapt the solution for your business
The scheme is quite simple and universal. It is more of a process than a specific technical component. The process should be initiated by the project manager or manager, the one who leads the technical team. If you follow the same steps we did, you will quickly understand where you are going, what you are doing, and how you are doing it.
Here's an action plan to start the process:
➢ Create a spreadsheet to list the tools used in different departments, indicating the purpose of their use.
➢ Ask the finance department to provide information on the cost of using these tools.
➢ Sign up for Miro or use another tool to create a board.
➢ Design and create a mindmap or similar structure to visualize the architecture.
➢ Add tools and establish logical connections between them.
➢ Add the necessary headers for keeping a log of updates.
➢ Connect the upd_log table to the task manager used in the company through a connector.
➢ Tasks should be automatically added to the table based on the "completed/done" criterion.
➢ Hold team meetings every two weeks.
➢ At the first one, describe the important tasks that have already been included in the upd_log table.
➢ At the second one, describe both tasks and new entities and relationships that are being added to the architecture visualization.
This plan aims to create an effective architecture management system for technical solutions in your company.
Is this system applicable to large companies such as Nova Poshta?
This system can be applied by large companies such as Nova Poshta, but it will require adaptation.
If we look at individual departments of Nova Poshta with up to 20 people, this system can probably work effectively. However, when scaled globally across the company, it may be more difficult due to the large number of requests and tasks.
For large companies, a possible solution may be to treat each department as a separate element and implement a task management system at the department level. This way, departments will have their own architecture frameworks, and it can work more efficiently than trying to apply the system to the entire company as a whole.
Also, if you initiate this system in a company, it may be worthwhile to do so through a department-level manager, such as a COO, who will be responsible for a specific area of architecture. This approach can work effectively, as it allows you to manage tasks at a more local level and maintain control over the architecture at every level of the organization.
How long did it take to implement this solution? What were the main stages of implementation and how long did they take?
The implementation of this solution took about a month. We could have done it faster, but we were testing different options. The iterative approach allowed us to gradually improve the process.
The main stages included:
- Preparing a board on Trello.
- Description of rules and procedures for the team.
- Appointing a meeting with regular task planning.
- Creating a "task log" to track progress.
- Updating the architecture to reflect the new process.
If you start from scratch, it can take about two weeks. The first days will be spent describing the rules and installing the tools. Then you will need additional time to fully describe the architecture. If you're working with an existing large project, the process can take longer - up to three weeks.
How well this solution works for large companies depends on how they are organized. In companies with 200-300 people, it can be more difficult because of the large number of requests and tasks. But I think this system can work for sub-teams of up to 100 people, where everyone can understand and accept their role.
Who might be interested in it and how to encourage them to implement the architecture?
Project architecture is a key element that can be of interest to different groups of people. First of all, these are managers who do not always have a clear understanding of the technical component of their business. They often come up with ideas like "let's build a new website," but don't understand how the technical architecture of their business works.
Having an architecture map will help them better understand how to manage all the applications and solutions used in the company and make resource management more efficient.
Secondly, technical architecture is extremely useful for employees in industries such as banking, where there is a clear division between front offices (branches where customers are served) and back offices (locations where documents and information are processed).
In IT companies, architecture mirrors the processes that are reflected in software and code. Therefore, understanding and managing technical architecture is crucial for companies that strive to remain competitive in a world where online work is becoming increasingly common.
Resource Savings and Avoiding Unnecessary Costs
Understanding your architecture and its changes helps to avoid unnecessary costs. Many companies face the problem of excessive expenses on technical solutions that consist of many micro-solutions. Each of them solves a small task, but together they can lead to significant costs. Without a clear understanding of the architecture, it’s difficult to grasp where exactly the money is going and how to use it more efficiently. This helps to avoid overspending and to allocate resources rationally.
Benefits of Understanding and Managing Architecture
Understanding architecture allows for controlling its changes and avoiding mistakes. In our case, we not only see the architecture but also understand how it changes every two weeks. This enables effective resource management and helps avoid unnecessary expenses. We also ensure that the human factor does not undermine all the efforts invested in creating the company's architecture over the years. This helps to avoid contextual conflicts and maintain productivity at a high level.
How to Encourage People to Implement Architecture
➢ Effective Resource Management: Explain how proper management of architecture helps avoid unnecessary expenses and rationally utilize resources.
➢ Control and Optimization: Emphasize the importance of continuous control and optimization of architecture to maintain business process stability and efficiency.
➢ Risk Reduction: Explain how understanding architecture helps avoid mistakes and reduce risks associated with the implementation of new technical solutions.
➢ Productivity Enhancement: Show how architecture helps increase team productivity and work efficiency through better process organization and the use of modern productivity tools.
➢ Clear Process Overview: Ensure that all team members have a clear understanding of how the technical architecture works and how they can contribute to its improvement.
Example of Implementing Architecture for a Women's Clothing Online Store
Let's consider how to implement the technical architecture for an online store where 90% of the inventory consists of women's clothing, and 80% of that is dresses. Such a business has specific unique requirements that must be considered when building and managing its technical architecture.
Site Structure and Functional Capabilities
The main component of the online store's architecture is its website. The site should feature various functions and integrations that ensure ease of use and increase conversion rates:
Business Process Automation
➢ Integrations with CRM Systems: These allow for storing information about customers and their purchases, which aids in subsequent communication and marketing efforts.
➢ Email Campaigns: Automation of sending emails with order confirmations, promotional offers, and discounts.
➢ Analytics: Collecting and analyzing data on customer behavior on the site, allowing for the evaluation of marketing campaign effectiveness and making informed decisions.
Risk Management and Task Monitoring
Let's consider a scenario where the external environment changes. For example, before the full-scale invasion, many Ukrainian businesses used Yandex analytics or 1C. After the war began, Ukraine banned Yandex as a hostile resource. A business owner who is not familiar with technical details might not be aware of these risks.
Regular meetings and reviews of the technical architecture allow for the timely identification of such vulnerabilities and taking measures to eliminate them. For instance, switching to other analytics systems and integrating with secure tools for data processing.
Optimizing Data Management and Automation
Analytics is a crucial component of any business. You may have a system that collects data and displays it on dashboards for further analysis. This data can include information about orders, customer behavior, and financial metrics. Automation can also be used for document processing. For example, switching to Google Docs for processing invoices and bills.
Evaluating Team Efficiency and Resource Management
Understanding technical architecture allows a business owner to assess the efficiency of the team and its workload. For instance, adding new major components like a CRM and a financial tool might push the current team to its limit, necessitating the addition of extra resources or a review of processes for automation.
Thus, the framework we’ve developed can be applied to any online business. It will help owners better understand the technical architecture of their company, manage resources effectively, and avoid unnecessary expenses. Regular monitoring and evaluation of the architecture’s condition ensure the stability and growth of the business.
Useful Advice from Those Who Have Already Implemented Solutions to Those Who Have Not Yet Taken the Plunge
We highly recommend the Techmind course from IAMPM. For understanding technical nuances like how the internet works, web applications, websites, and general aspects of the technical world, this course is extremely beneficial.
"I took this course in 2019. It gave me an understanding of what technical IT and non-technical IT are, and it also helped me better organize processes in the company and improve their efficiency, especially in team work," – Nikita Solunin, the author of the architecture solution.
Brief Conclusion
In the context of modern business, where technical solutions play a key role, it is important to understand and properly manage project architecture. Regardless of the industry, whether it's e-commerce or other fields, effective management of technical architecture helps optimize processes, reduce costs, and increase team productivity.
Regular monitoring, the implementation of automation, and the analysis of technical solutions help avoid duplicated efforts and improve the overall functioning of the company. Training and utilizing useful resources like the Techmind course from IAMPM contribute to a deeper understanding of technical aspects and help manage projects more effectively.