Quality code, guidance and advice to create a flawless product that meets your business needs and satisfies your customer.
2-week sprints allow us to stay flexible and adapt to your needs and keep us efficient.
Our quality developers keep their coding simple, meaning fewer bugs, easier diagnostics and simpler maintenance.
Towards simplicity
The one thing we’ve learned from our experiences is that it's very easy to make things complex, and much more difficult to make them simple.
All objects (variables, classes, methods, etc.) must have a single purpose. If a method is used in two different contexts for different purposes, future changes are more likely to create an error.
Sparing a few lines of code that to avoid confusion doesn't pay off in the long run!
Simplicity is more important than a hyper-compact logic which only the author can understand (e.g. multi-level class inheritance can be attractive from the hobby-developer perspective, but it's usually terrible business-wise as it will be very hard to understand).
Code needs to be crystal clear when specifying what each class, method or variable does. Simple common sense is the best way to create clear code.
A system that is not understood in its entirety, or at least to a significant degree of detail by a single individual, should probably not be built.
A father of computer science.
Using the industry-standard SCRUM framework, we have daily 15-minute meetings and bi-weekly planning meetings. This helps us break long term goals into short term wins and control the progress of your project.
At Visla, we’re practical about testing.
A feature that’s assumed to be ‘coded flawlessly’ is all but guaranteed to break. But throwing the same test at it time and time again doesn’t actually improve it. That’s why we ensure the quality of your product using the following test classes:
These tests are written by software developers rather than testers. The goal is to ensure that each function returns the expected result. Unit tests help uncover the most basic types of errors that are a result of adding new features.
These are the most essential types of tests. They check if every component of the system is behaving as planned, and under simulated circumstances. These tests should be automated as much as possible.
These tests are performed to make sure the final software meets the initial requirements as specified. Typically these tests are done per-stage and at the end of the project (by both the project manager and the customer).
These tests find weaknesses and security holes in the new software. These tests are run by those who have not been involved with the project and know nothing about it.
These determine the maximum performance capabilities of certain components or resources of the new system.
Tests performed by the Visla UX team to detect any usability issues. These tests are done throughout the entire creation process.
We develop code according to the object-oriented programming principles. This provides a clear modular structure of the application and makes it easier for both developers and end-users to operate.
The object-oriented approach requires a little tech design effort but reaps many rewards. Well implemented, object-oriented architecture is easier to maintain and faster to develop. It enforces higher code integrity of the system, and, in the long run, lowers the total cost of ownership.
We use strict MVC and MVVM design patterns to avoid the risk of ending up with imperfect code. Data, interface and logic are clearly separated from each other, which makes the code easy to maintain and modify in the future.
You can always access the code we develop for you in the Git repository. We use version control tools such as Github, Bitbucket or Gitlab. The code is typically separated into a few branches such as the last stable branch, development branch, and branches for particular features or change requests.
We automate the software release process, so whenever an alpha or beta version is committed to the repository, it is also automatically deployed on the testing server so your team can see the new version immediately.
We deploy the software to a cloud-based infrastructure such as Amazon AWS or Leaseweb. We can also work with any server house of your choice. In the corporate world, we often work with secure servers behind a VPN.
Working to heightened security measures is nothing new for us. Having worked with international airlines and banks, we’re experienced first-hand with data security, data sensitivity and the extremely important role it plays.
No need to remember your back-ups. If you decide to use Amazon AWS services for your server infrastructure, software images of your virtual machines will be automatically snapshot (Amazon EC2) and the database will be backed up on the fly (Amazon RDS).
We understand all too well that good customer support is a crucial part of the overall package. In all our app development projects, we offer a convenient maintenance and support service, where the Visla team is responsible for making sure your app runs seamlessly at all times. Our team is available around the clock for any type of support that’s needed.