What is our primary use case?
I have used it for a company in Saudi Arabia. The application was mainly focused on transportation. The other application is a recent upgrade.
What is most valuable?
I love OutSystems because, as a manager and someone who has experience with various traditional development technologies (approximately 20 technologies), it provides a standard approach. Unlike other companies where there is no development standard, with OutSystems, we have our own standard. This makes it easier when transitioning between developers or onboarding new team members.
What needs improvement?
It's not easy to master OutSystems within the first month. Even if you have ten years of experience, like me, it will take about two to three months to explore everything. For example, customizing a header or integrating a video is not easy.
Many people assume that mastering OutSystems is as simple as drag and drop, but for specific tasks, you need someone with development experience, preferably a senior or expert with over five years of experience.
Sometimes it requires both skills, someone who knows how to develop and add script code or extensions to our system. However, there are also times when it is easy. Let's say around seventy percent of the time; it's easy. Customizing the user interface, aside from the header, is relatively straightforward, although I did encounter difficulties with the header.
Another example is working with live video, which is also not easy.
For how long have I used the solution?
I have been using OutSystems for one year.
What do I think about the stability of the solution?
It is very stable. I would rate the stability a nine out of ten.
What do I think about the scalability of the solution?
The scalability of OutSystems is not bad. I know someone who conducted a scalability test. They used SCC Solutions, a telecom company with a great team of developers. They encountered some issues compared to what OutSystems claimed. However, I believe you always need to have a package that can handle more users than OutSystems recommends.
If they suggest an eight-gigahertz processor, you should go for a better specification. But overall, it's not a major problem. Just make sure to exceed the recommended specifications. OutSystems is widely used in many regions. It's extensively utilized in the UK and Australia, as I have experience working with these countries. However, in some countries, traffic and other factors can make it more challenging.
How are customer service and support?
I did contact the customer service and support team, but they mostly provide general IT support.
I believe there is room for improvement in technical support. However, they are good and responsible in terms of providing documentation and guidance to help you.
How was the initial setup?
I believe you would need someone who is already good in development or has a logical understanding of development. OutSystems has four layers: the timers and processes layer, the interface layer, the version layer, and the database layer.
Sometimes, when you add a module from the first layer, it doesn't work because it needs to be compatible and supported by the OutSystems platform. Many components or modules from the first layer are often incomplete or non-functional when compared to the later layers.
Therefore, you need to comprehend the logic and then integrate it. It's not always straightforward. There are challenges involved.
If you don't have someone who is already skilled in development, most of the time, you won't succeed. I believe you need a certain level of intelligence to excel in OutSystems. You have to be intelligent, like in development.
I've brought in many developers who weren't skilled in development and put them in our system. They excelled at all the traditional tasks but when I asked for any custom work, it took them around one month to finish.
What about the implementation team?
The deployment process is very easy. It involves just one publish button. They call it the "one publish" button.
In our system, there are always many challenges in development. For example, you don't need an administrator or a developer because we have something called architecture AI. It can evaluate your application and determine if it follows the best practices or not. We already have a baseline of good practice cases or standards for our system, so we're not far from the best practices. There are certain things you can't do directly, like calling a server action. Instead, you need to use client actions.
There are many perspectives like this that you need to consider. Otherwise, it won't work. For example, you can't simply drag and drop a client action inside a server action.
I believe anyone would require about two to three months of training, and they would need to build their own application. The issue in our system is that sometimes developers are only skilled in either logic or UI. I think it's important to train people to be proficient in all aspects.
What was our ROI?
There is an annual cost of approximately 23k. So sometimes, you need to wait for a return on investment. It also requires skilled individuals who know how to utilize this technology and train others. Finding good developers isn't easy because most of the people who work with OutSystems come from Big Data or have multiple engineering backgrounds. We face difficulties in finding the right people, and I think this is a common issue across platforms. Nonetheless, I consider it a unique feature.
What other advice do I have?
Overall, I would rate the solution an eight out of ten. I still believe in our system, despite some limitations in traditional development. There is always room for improvement.
I think they are constantly making progress and adding new features. However, sometimes it's not easy to achieve customizations.
Disclosure: My company has a business relationship with this vendor other than being a customer: