← Back to list

Portfolio

Kweek

For businesses, the service solves the problem of finding performers for urgent short-term tasks without formal employment. System partners register and manage shifts through a personal account: creating, editing, and approving responses from available performers for shifts. Users can use the mobile app to find part-time work, whether permanent or one-time. The system incorporates a well-thought-out procedure for moderating performer documents and self-employed status. The platform integrates with other services for status verification and financial operations. Performers can quickly receive their monetary rewards into their accounts. The platform streamlines document flow between customers and performers and ensures tax deductions. The Challenges: The central entity of the system is shifts. Implementing the intricate logic of shift execution, consisting of multiple time-bound statuses across five system modules: B2B, B2C, Mobile App, Operator Administrative Panel, and Partner Administrative Panel. Numerous processes and scenarios require handling, and high requirements for data immutability exist. The team successfully tackled all set tasks and released the application into production. They are currently engaged in maintaining the system. Technologies used: PHP, Laravel, VueJS, ReactNative, PostgreSQL, Ubuntu, Docker, Gitlab CI, Postman, YOOKassa, Sentry, Orchid

Mostik school

Amid the growth and popularity of remote learning, a school for children with developmental peculiarities approached us. During the project, we developed a personal cabinet for students and their parents, a personal cabinet for teachers, and an administrative panel for the administrator. The personal cabinet features functionality for lesson planning, completing homework, purchasing additional materials (video courses, books), and conducting both group and individual sessions. The key development of the project is the video conferencing player in the browser based on WebRTC. Standard solutions like Skype and Zoom were not suitable as they lacked an interactive component for working with children. In our solution, besides the basic set of features, there is the ability to answer questions that the teacher presents to students in real-time, "raise a hand" to speak, request a break by pressing a button, express emotions using emojis, notify the teacher about the need to step away, and have a chat, among many other features. The Challenges: High requirements for user accessibility to ensure the platform's interface and functionality are clear and convenient for children and their parents. Ensuring that the platform provides an adequate level of interactivity comparable to in-person learning. Working with WebRTC, especially handling this technology on various browser engines. During the project, we accumulated unique knowledge and experience working with WebRTC in different scenarios. The project successfully went live and is currently under the support of our team. Technologies used: WebRTC, MediaSoup, Docker, Ubuntu, Gitlab CI, Nginx, NodeJS, Express, PHP, Laravel, ReactJS, Postman, jMeter, Websocket, Socket.io, PostgreSQL, Redis, Sentry, Grafana, Prometheus

Contact Qiwi

The Contact (Qiwi) payment system application for sending and receiving money transfers with cash withdrawal or card-to-card transfers. Additionally, the application allows you to: - Manage your account within the system and link bank cards; - Track transfer statuses and cancel them; - Repeat previously sent transfers; - Exchange currency; - Find nearest points for sending and receiving funds for offline payments and access comprehensive reference information. The Challenges: The application places high demands on security due to its financial nature, which led to the development of native modules in Kotlin and Swift to implement the SSL pinning mechanism. The application comprised over 50 screens and complex conditional logic, including registration, authorization, fund transfers via cards, user account settings, password change functionality, dynamically generated fields module, payout reception, card interactions, and more. Technologies used: ReactNative, SSL pinning