IntexSoft has been working with Java from the very creation of the company. We have several Java teams, the majority of which are Oracle Certified Professionals. We’ve developed 100+ projects with Java stack. We’ve held 20+ meetups dedicated to Java technology. We’ve written about 15 articles about Java last year.
So now we would like to share our own experience of working with Java.
In this article, we’ve gathered 5 best Java projects developed by IntexSoft. We hope, you’ll find them interesting and useful.
1. Mobile Application for Android: AntiBAG Tahograf
The client reached out to IntexSoft to develop a mobile app for truckers that would track the working hours. Since end-users (in our case - truckers) were incurring huge fines for violation of work and rest hours, such an app was highly demanded.
The client had a distinct vision of the business idea and his own vision of graphic design. So our team compiled the project specification based on those requirements and started the development process.
While working on a project, we closely cooperated with direct end-users of the app – truckers. That’s why the dev team was able to implement a variety of important changes. For example, we found a solution for traffic tracking errors, witnessed especially in long tunnels with no signal.
Some of the key app features:
- The app daily reminds the driver to specify the country he is driving in;
- Sound notifications when the driver needs to make a stop or take-off;
- Work calendar;
- Day/night display mode;
- Can work in offline mode (an access to the Internet is needed only during the first launch);
- Identification of exact location (GPS and network-based).
- Native and Custom UI components
As a result, the client managed to get a return on his investments in a week, and now the app is rated 4.6 on Google Play and has over 10K downloads.
Check the app on Google Play.
2. Mobile Applications for Android and iOS: Museum Guide
The client hired IntexSoft to develop mobile applications for Android and iOS. The goal of the project was to increase attendance and make visiting the museum more interesting and interactive.
Key tasks within the project were to develop a virtual map, to configure navigation in the museum and to develop a virtual tour feature for the exhibition rooms. For the virtual map and navigation configuration our developers used a GPS-system. For the virtual tour feature our dev team used panoramic photographs.
Additionally, we implemented a full-fledged operation of the app in offline mode, added a news page in the application, and also integrated the ticket purchase within the app.
The most important task was to modify the existing Audio Guide Application and adapt it for people with a hearing impairment.
Some of the key features of the app:
- Virtual map and navigation in the museum;
- Search for exhibition rooms and information about them;
- GPS navigation to the museum;
- Virtual tour in the exhibition halls;
- Ticket purchase;
- Access to the museum news;
- Demo mode.
- Push Notifications
- Google Maps API
As a result, the app is now popular with museum visitors, tourists, and art lovers.
3. Web Application: 3D Configurator for Rail Systems
The client hired IntexSoft to develop a 3D configurator for the designing of spare parts, as well as for the distribution and control of electrical energy consumption.
The key challenge was to develop a configurator that would help users to create mounted components and work with them. IntexSoft team created a flexible admin panel which allows loading and processing of each 3D part separately and setting up a large number of crucial parameters. The developed system also lets to calculate the construction stamina in case of a short circuit and the construction power losses.
We set up the rail system geometry export in three formats - OBJ, 3DS, and DXF. The exported data can be used in further production processes and the preparation of sales documentation.
The system also simplifies sales processes: customers are able to request a commercial offer by adding the description of the required construction, and the company representatives can calculate the cost.
The application has several access permissions according to 4 types of users: Anonymous (unregistered) user, Registered user (client/representative of a company), Admin pattern, and Admin.
Key features of the app are:
- 3D view change (rotations);
- Load and editing of the existing project;
- Creation of project documentation;
- Requesting the offer for the project;
- Export of rail system geometry (OBJ, 3DS, DXF);
- Calculation of short-circuit strength capacity;
- Calculation of rail system power losses.
- Java 8
As a result, the client got a product for optimizing the development of 3D layouts and order processing. By the way, part of the functionality developed within this project is used by the client team for other products.
4. Web Application: Online Dance School
The client is a professional dancer, who came up with the idea to develop the app allowing the dancers to teach and train everyone. So he hired IntexSoft to develop Online Dance School.
This particular project is unique because it’s intended for distant group dance learning. 16 users can participate in one lesson: one Teacher and 15 Students.
The work of the app is organized as follows
- Before a lesson, a Teacher uploads the audio to the app;
- A Student then books a lesson and pays for it via a payment system;
- During the appointed time, a Student has to open the application or enter the website via a mobile device with a camera;
- After authorization, a Student receives the audio prepared by the Teacher which is uploaded on their device;
- Then the system estimates the speed of the data transmission channel and tracks when the student joins a lesson.
The synchronization issue arose from the fact that each user has a different connection speed, location, and Internet provider. To resolve the issues with synchronization and multiplexing, the dev team used the Wowza media server, Amazon, and FFmpeg tool. To enable video streaming via a browser without any third-party systems, the IntexSoft team decided to use WebRTC technology.
Apart from streaming, the app has such features as: paying for a lesson via PayPal/credit card, sending text messages and files during the lesson via group chat, recording the dance after a class and send it to the teacher, etc.
- Java 8
- Spring Boot
- Node.js (WebSocket)
- pkg (npm package)
- Wowza Media Server
- Amazon EC3
5. Web Application: Highly-Loaded Data Storage and Processing System
The company had an outdated billing system that could no longer cope with some important tasks and meet modern requirements. So they hired IntexSoft to design a new system from scratch.
This is a Big Data project because a key feature of the system is the storage and processing of large data arrays. The scale of the system can be compared with Spotify, Yandex.Music, etc. It processes billions of files per day and receives approximately 600 thousand records per second.
In the conditions of such data volumes, the distributed Cassandra database was used as a storage. As for billing, to process and calculate the distributed data our team used Apache Spark. Moreover, the system is built on the basis of microservice and distributed architecture. Currently, there be about 20 microservices within the system.
Key features of the system:
- Data collection and processing;
- Data aggregation;
- Calculation of data: accounting of payments and expenses, recalculation of expenses for issuing a new invoice based on data updated;
- Storage of a large amount of data;
- Ability to upload data-reports.
- Spring Boot
- DSE Cassandra
- Apache Karaf
- Apache Spark
- Apache Kafka
- Apache Camel
- Akka Actors
The project started in 2016, and now the developed solution is a complete leading system for data storing and processing.
Java is used in a variety of projects: from mobile applications to enterprise solutions. We tried to list the most outstanding Java projects developed by our company. All of them are different by domain, complexity, and specifics. But all of those projects resulted in a successful way.
Being experienced in Java, we are able to help in projects developing of any complexity and for any industry. If you have a project idea, or you need to automate your business processes - contact us and get a free consultation from our specialists.