Radya Labs Technology Update 2020
As we know, from time to time the development of information technology becomes very rapid, so does the technology used by Radya Labs. As an IT Solution company, we continue to follow and try to apply new technologies both from programming languages, tools, to framework development. We try to use the latest technology trends with the purpose of producing maximum products, so we can contend with other software development companies. Then, what are the new technologies applied by Radya Labs? Here is the list.
At present, there are four platforms included as a stack technology used by Radya Labs to develop applications, namely:
- Mobile (Native)
- Java and Kotlin as a programming language used for Android Apps
- Objective C and Swift as a programming language used for iOS Apps
- Web Development (MVC/WebAPI) using .Net Core Framework
- Microservices using .Net Core Framework with RabbitMQ as a message broker
- Angular, React, Vue as a framework for frontend web development
- NET Core as a framewor
- Blazor for frontend development
- Cross Platform
We also consider the use of the right tools to help the application development process being worked on. Currently, tools that we used are :
- Bitbucket for repository with the implementation of Git Flow to produce better source code management and code quality.
- Visual Studio as an IDE to develop the Backend (like API or Chatbot) with the used programming language are ASP.NET and .NET Core.
- For the Frontend development, we use Visual Studio Code and using programming language such as: Angular, React, Vue.js, React-Native and Flutter.
There are several servers that Radya Labs prepares for the development process according to the requirements and architecture that client need.
- Internal Server (On Premise) as a development server with the operation system are Windows and Linux. This server used for Database, App Server (IIS, Nginx), Active Directory, SSH, and IIS Web Deployment.
- VPS as a staging server that will be used if the project already in deliverable phase and ready to test by client or in our ways called as ‘weekly build’.
- Azure Cloud Service, used as a solution if our client will publish their application in Azure, services that are often used include: Web App, Azure SQL Database, MySQL, Storage Account, Application Insight, VM, and others. Beside of that, we also using Azure as a backup server for the development if there are any problems in our internal server like blackouts or maintenance.
Radya Labs has tried to implement DevOps Technology from one years ago, tools that we use is Azure DevOps. Our goals in implementing this include:
- Automate the developer’s recurring jobs, such as passing object releases to the development, staging, and production servers. So, with the use of this automation, developers are expected to be able to focus more on the tasks and the generated code.
- Increases transparency in project work so that clients can see every task item done by the development team, from the source code to the applications uploaded to the server. All of that can be seen in detail start from the beginning of the project until the live production.
- Reducing human errors when building applications to be deployed to the servers.
- Implement the Unit Test and Regression Test to ensure functional applications run perfectly.
Code analysis is used to assess the source code produced by developers to achieve maximum quality. The tools used in Radya Labs right now is SonarQube.
DevOps x Regression Test
At the end of 2019, we also doing research about the integration of DevOps UI with Regression Test, we use Katalon Studio and SmartBear as the Testing Tools. The aim of this integration is to ensure all functional applications run well before being deployed to the Production server.