Kirill S. looks like a good fit?

We can organize an interview with Aldin or any of our 25,000 available candidates within 48 hours. How would you like to proceed?

Schedule Interview Now

Kirill S. Backend, Python and Cloud Platforms

My name is Kirill S. and I have over 3 years of experience in the tech industry. I specialize in the following technologies: HTML5, JavaScript, PostgreSQL, Python, Docker, etc.. I hold a degree in Bachelor of Computer Science (BCompSc), Master of Computer Science (MSCS). Some of the notable projects I’ve worked on include: Backend for credit card analyzer, Backend for Food Delivery Mob App, Backend for custom CMS platform (inner project), Backend developer for platform for renting/leasing special equipment. I am based in Kovel, Ukraine. I've successfully completed 4 projects while developing at Softaims.

I thrive on project diversity, possessing the adaptability to seamlessly transition between different technical stacks, industries, and team structures. This wide-ranging experience allows me to bring unique perspectives and proven solutions from one domain to another, significantly enhancing the problem-solving process.

I quickly become proficient in new technologies as required, focusing on delivering immediate, high-quality value. At Softaims, I leverage this adaptability to ensure project continuity and success, regardless of the evolving technical landscape.

My work philosophy centers on being a resilient and resourceful team member. I prioritize finding pragmatic, scalable solutions that not only meet the current needs but also provide a flexible foundation for future development and changes.

Main technologies

  • Backend, Python and Cloud Platforms

    3 years

  • HTML5

    2 Years

  • JavaScript

    1 Year

  • PostgreSQL

    2 Years

Direct hire

Potentially possible

Previous Company

N-iX

Ready to get matched with vetted developers fast?

Let's get started today!

Hire Remote Developer

Experience Highlights

Backend for credit card analyzer

This innovative solution is designed to meticulously analyze bank transactions of users, offering personalized recommendations for the most suitable credit card options available in their specific market. It achieves this through a combination of advanced algorithms and user-friendly interfaces, all powered by a sophisticated technology stack. How Technologies Were Utilized: 1. Python: As the core programming language, Python provides the foundation for our application. Its powerful data processing capabilities and extensive libraries are crucial for analyzing transactional data and implementing complex algorithms. 2. Django: We leverage Django for its robust framework capabilities in managing data and ensuring secure user interactions. Its ORM feature simplifies data modeling and database queries, essential for handling large volumes of transactional data. 3. PostgreSQL: This relational database system is used for its performance and reliability in managing structured data. It effectively stores and retrieves user transaction data, allowing for efficient data analysis and processing. 4. Docker: Docker containers encapsulate the application and its environment. This ensures consistency across different deployment stages and simplifies the management of dependencies and services, crucial for a seamless, scalable deployment. 5. AWS (Amazon Web Services): AWS provides a scalable cloud infrastructure to host our application. It ensures high availability and flexibility, enabling us to efficiently manage traffic spikes and data storage requirements. 6. Redis: Redis is employed as an in-memory data store to manage session states and cache frequently accessed data. This significantly enhances the performance of the application by reducing the load on the primary database and speeding up response times. 7. FastAPI: FastAPI is used to build high-performance, asynchronous APIs that are crucial for the real-time analysis of transaction data. It provides automatic data validation, serialization, and documentation, streamlining the development of secure and scalable API endpoints. By integrating these technologies, the Credit Card Analyser offers a robust, secure, and efficient solution for personalizing credit card recommendations based on individual user transaction patterns, catering to the dynamic needs of the modern financial market.

Backend for Food Delivery Mob App

Delivery app in the USA partners(Company Name Under NDA) with small shops to provide direct home delivery of their products. My goal was to create a robust, scalable, and efficient service that could handle a high volume of concurrent users and transactions. To achieve this, we chose a microservices architecture, leveraging the power of FastAPI, PostgreSQL, and AWS. 1. Microservices Architecture Design I began by designing our microservices architecture. This approach allowed us to break down the application into smaller, independent services, each responsible for a specific functionality - like user management, order processing, and payment handling. This modular structure not only facilitated easier maintenance and updates but also enabled us to scale individual components of the system as needed, without affecting the entire application. 2. FastAPI for Performance and Ease of Use FastAPI was my choice for the web framework. Its asynchronous support meant we could handle large numbers of requests simultaneously, a critical feature for a high-demand food delivery application. FastAPI’s automatic validation, serialization, and documentation (via Swagger UI) streamlined our API development and made it more accessible to the frontend team. 3. Database Design with PostgreSQL and SQLAlchemy For database, PostgreSQL was an obvious choice due to its performance, reliability, and support for complex queries. We integrated it using SQLAlchemy, an ORM that facilitated the interaction between our Python code and the database. This setup provided us with the flexibility of an ORM, alongside the robustness and scalability of PostgreSQL. 4. Creating Endpoints for Front-End Developers One of my key responsibilities was to design and implement API endpoints that the frontend team could use to build the user-facing part of the application. We ensured these endpoints were intuitive, well-documented, and aligned with the frontend's requirements. Each endpoint was meticulously tested to handle various scenarios, ensuring reliability and performance. 5. Utilizing AWS for Hosting and Scalability Deploying and managing our application on AWS was the final piece of the puzzle. We used services like Elastic Beanstalk and EC2 for deploying our microservices, RDS for managing our PostgreSQL databases, and S3 for storing static files and images. AWS’s scalability and robustness were instrumental in handling fluctuating traffic loads, especially during peak hours. 6. Security and Compliance Security was a top priority throughout the project. We implemented SSL/TLS encryption, secure authentication mechanisms, and rigorous data validation to protect user data and transactions. Regular security audits and compliance checks were part of our routine to ensure the highest security standards. Conclusion Developing the backend for a food delivery service was a challenging yet rewarding experience. It was a journey that required careful planning, a deep understanding of various technologies, and a commitment to best practices in software development. The result was a highly scalable, efficient, and robust backend, ready to serve customers and drive the business forward.

Backend for custom CMS platform (inner project)

Our advanced CMS(inner project) provides a comprehensive solution for optimizing various business operations. It enables clients to streamline their sales processes, enhance recruitment activities, effectively manage projects, and strengthen their leadership teams. This is achieved with remarkable efficiency and effectiveness, thanks to our robust technology stack. The core components of our technology stack include: 1. As the backbone of our CMS, Python provides a robust and scalable platform. We leveraged Python's extensive libraries and straightforward syntax for building core functionalities, ensuring both reliability and ease of maintenance. 2. We utilized Django for its excellent structure and ready-to-use components. It powers the admin interface and handles user authentication, allowing for a seamless management experience. Django's ORM (Object-Relational Mapping) capabilities were particularly valuable for database operations, simplifying complex data interactions. 3. Chosen for its reliability and performance, PostgreSQL serves as the primary database system. Its powerful features for handling large volumes of data and complex queries support the dynamic data management needs of our CMS. 4. We used Docker to containerize the CMS, ensuring consistent environments across development, testing, and production. This streamlined deployment process minimizes compatibility issues and simplifies scaling. 5. This toolkit was instrumental in providing a high-level ORM interface to PostgreSQL. It facilitated the translation of Python objects to database tables without losing the flexibility of SQL, enhancing the ease and efficiency of database operations. 6. Working in tandem with SQLAlchemy, Alembic managed database migrations. It helped us track and apply changes to the database schema, ensuring smooth transitions and updates without data loss or downtime. 7. We deployed our CMS using Uvicorn, an ASGI server. Its lightning-fast performance and support for asynchronous processes enabled us to handle a large number of simultaneous connections, crucial for high-traffic environments. 8. FastAPI was employed to build high-performance, scalable APIs. Its automatic validation, documentation, and dependency injection features accelerated the development of robust API endpoints. This made it easier to integrate with third-party services and extend CMS functionalities.

Backend developer for platform for renting/leasing special equipment

A monolithic architecture using Django typically takes the classic approach to web application development, where all the application code resides in one monolithic repository and runs on a single server. Amazon Web Services (AWS) is usually used as the preferred hosting for Django applications because they provide a wide range of tools for hosting, scaling, and managing Django web applications. AWS offers services such as Amazon Elastic Beanstalk, Amazon EC2, Amazon RDS, and others. Django frameworks often use Django REST framework for API development, and Celery for asynchronous task processing. This is not SaaS, this is a marketplace. But we realized work with tenders and financial operations. Perhaps this experience will be of interest to you. Some challenges that we faced: 1. We refused to use third-party libraries for authorization and registration and wrote our own solution because many libraries in this direction have problems with support and are very rarely updated. So as not to be tied to a particular version of the Django framework, it was decided to develop our own solution. The site has registration and authorization through Google. It was implemented directly through the Google API. 2. Rentzila has such functionality as a map, which would save the company's budget, so it was decided to use a free solution leaflet. On the map are added a lot of different functions, all possible filters by city, region, price, services, categories, sorting by date, name, and price. During the work with the map was noticed that when we return a large object with ads the answer comes very long. In order to reduce the load it was decided to split one heavy request into two. The first request is for the map itself, which returns only coordinates to draw markers on the map, and the second one returns all of the necessary information about the ad with pagination. 3. A support chat has also been implemented on rentzila. Chat is written on websockets using Django-channels. Chat has different behavior for different types of users, admin, registered user, and anonymous user. So it was decided to separate them into different types of users and write the logic for each type separately. The chat has the ability to upload pictures. 4. On rentzila implemented multi-level notifications whose task is to notify the user in different systems, such as mail, phone, Telegram, Viber. To solve this problem we divided each system into types and let the user choose where he would like to get notifications. Since Django framework is synchronous it was decided to move these tasks to background tasks using celery and redis. The site also has instant notifications that show up in a bell on the frontend. This was implemented using websockets. 5. On rentzila very often you need to perform different tasks at a certain time. For example convert currencies once a day at 9 am, collect and send logs at 8 am, calculate the online count for the day, to close tenders when the time expires. For this, it was decided to use celery-beat in conjunction with Redis.

Education

  • Petro Mohyla Black Sea State University

    Bachelor of Computer Science (BCompSc) in Computer engineering

    2017-01-01-2021-01-01

  • Petro Mohyla Black Sea State University

    Master of Computer Science (MSCS) in Computer engineering

    2021-01-01-2023-01-01

Languages

  • English
  • Russian
  • Ukrainian