Position: Senior Android
Company: Soft Industry Alliance
Experience required: 5y
Category: Android
English level: intermediate
Published: 2021-10-01T00:00:00+03:00

Project description
The project is a distributed system for file remote storage and access. Every file, which the user downloads into the system, gets split into a number of small chunks, which are distributed between other useful storage spaces. When a user wishes to download a file, a sufficient number of chunks is downloaded from the remote users and the file is recreated from them. This way of file storage permits to achieve several aims:
•to store the files without the storage space, maintained by the service provider,
•to get quick access to the files and high resilience due to the multiple sources, from which the chunks are downloaded,
•to improve security by avoiding the storage of the full files.

Technologies:
The project itself consists of a client application for Windows, which originally was a native Windows desktop application, written in C++, but is planned to migrate to Flutter and a client application for Android (in early stages now), built on Flutter. The core in the client is developed in C++, including the framework ACE. The project central component uses PHP web services as the number of background microservices, written in Python. Building CI/CD pipelines for the project includes using git repositories (Bitbucket), CI\CD automation solutions (Jenkins), and CI\CD automation solutions (Jenkins)At the present time the most of the project central component is hosted on AWS cloud and uses such AWS technologies as EC2, RDS, S3, Route53.

Requirements for hard skills:

Requirements:
1. Knowledge of Flutter
2. Knowledge of Android
3. Experience in C ++

What the developer will do:
continue developing the application on Flutter, the logic of which has already been implemented under Windows.
In the process of implementing the application, an Android developer who has been participating in the project since its inception will be consulted (8 months)
Take responsibility for developing an Android application.
Understand the C ++ part of the project that deals with Android.

TEAM:
Senior PHP Developer 
Middle+ DevOps Engineer
Senior С++ Developer
Senior Android Developer
Junior Flutter Developer - to-be
Junior QA - to-be