ZeitAdler - SaaS product developed in 3 months
Project duration: 3 months
Number of developers: 2
Lines of code: ~15.000
Hours worked: ~1.240
Programming languages: TypeScript, Go, React.js, JavaScript
Technologies: Linux, Kubernetes, Redis, MariaDB, RabbitMQ, Docker, Jenkins
Software as a Service (SaaS) is a software distribution model in which software applications are provided over the Internet and hosted by a software provider. The provider makes the application available via the Internet and takes care of maintenance, updates and support.
Idea
From the first draft to the final logo
Initially, we had the idea of integrating an eagle into the logo to match the name ZeitAdler. After several drafts and adjustments, however, we decided on a simple logo with a color gradient, as shown here outlined in red.
Prototype design
The design of established scheduling tools such as Calendly and Reclaim.ai has already proven itself on the market. We therefore oriented ourselves on these proven approaches and added our own features instead of reinventing the wheel. This resulted in the following prototype design:
Start of programming
Planning the infrastructure
Before we started programming, we planned the infrastructure. We opted for a microservice architecture to ensure the scalability and maintainability of the system.
The programming challenge was to design the individual services in such a way that they could be started multiple times in a Kubernetes environment without causing data inconsistencies. To ensure this, we rely on technologies such as RabbitMQ and Redis.
The infrastructure consists of the following components:
Start programming the administration dashboard for employees
The administration dashboard is designed for two views. One for the business owner and one for the employees. The business owner can make the settings for the calendar and services, while the employees can view their calendar settings and appointments.
Overview of employees
Setting options for the calendar
In the dashboard, the business owner has the option of creating new services, editing existing ones or deleting them. They can also assign employees to specific services, which is particularly useful if an employee can only offer certain services.
Start of programming the appointment scheduler for customers
To give customers the opportunity to book appointments at their preferred time and date, we have developed an appointment scheduler. This enables customers to book, reschedule and, if necessary, cancel appointments.
Sending the appointment confirmation email
After the customer has booked an appointment, they receive an appointment confirmation email. This e-mail contains all relevant information about the appointment, such as date, time and service.
Payment processing
We have opted for a subscription model for the provision of ZeitAdler. This allows customers to choose between different payment plans to suit their individual needs. For example, they can choose between a monthly or annual subscription. For payment processing, we opted for Stripe as it offers a user-friendly API and easy integration.
Creation of a web presence
To give potential customers an initial overview of the product, we created a website. This provides comprehensive information about the functions and advantages of ZeitAdler.