Proposals concealed
Proposals are currently absent
Proposals concealed
Proposals concealed
-
Oleh Dovhopolyi 5 July 2025Доброго дня, так, можете надати csv або xls файли для роботи. А я потім експортую їх назад
-
Oleh Dovhopolyi 5 July 2025Давайте краще в тг спишемось ? Бо тут можу через роботу не бачити відповідь. @Mr_Ambal
-
Oleh Dovhopolyi 5 July 2025Спросить ChatGPTАбо ви можете надати посилання на Google Таблицю з можливістю редагування, а також, якщо ви працюєте через Google Sheets API — доступ до нього.
-
Oleh Dovhopolyi 5 July 2025🎯 Система матчинга пользователей - Техническое описание
💻 Технологический стек:
Основной язык: JavaScript (ES6+)
Платформа: Google Apps Script
База данных: Google Sheets
Среда выполнения: Google Cloud Platform🏗️ Архитектура решения:
Серверная часть:
- Google Apps Script - облачная JavaScript среда
- Класс UserMatcher - основная логика алгоритма
- Event-driven архитектура - функции вызываются по событиям
Хранение данных:
- Google Sheets как NoSQL база данных
- Структурированные колонки с типизированными данными
- Автоматическое обновление истории и результатов
Пользовательский интерфейс:
- Кастомное меню в Google Sheets
- Модальные окна для отображения результатов
- Автоматические уведомления о статусе операций
🔧 Ключевые технические решения:
1. Объектно-ориентированное программирование:
class UserMatcher {
constructor(users) {
this.users = users;
this.pairs = [];
this.unpaired = [];
}
}
-
Oleh Dovhopolyi 5 July 20252. Функциональное программирование:
- Методы высшего порядка (filter, map, sort)
- Чистые функции без побочных эффектов
- Иммутабельность данных
3. Алгоритмические решения:
- Жадный алгоритм для геолокации
- Алгоритм максимального веса для общих тегов
- Алгоритм Фишера-Йетса для рандомизации
📊 Структура данных:
Входные данные (Google Sheets):
{
id: Number, // Уникальный идентификатор
name: String, // Имя пользователя
location: String, // Геолокация
tags: Array<String>, // Массив интересов
pastPairs: Array<Number> // История пар
} Выходные данные:
{
pairs: Array<[User, User]>, // Массив пар
unpaired: Array<User> // Непарные пользователи
}
🎲 Алгоритм матчинга:
Сложность: O(n²) для этапа тегов, O(n log n) общая
Память: O(n) дополнительной памятиЭтапы алгоритма:
- Группировка по геолокации - O(n)
- Сортировка по потенциальным парам - O(n log n)
- Матчинг по общим тегам - O(n²)
- Случайное распределение - O(n)
⚙️ Google Apps Script интеграция:
Триггеры и события:
javascript
function onOpen() { // Создание пользовательского меню SpreadsheetApp.getUi().createMenu() }Работа с Google Sheets API:
javascript
const sheet = SpreadsheetApp.getActiveSheet(); const data = sheet.getRange().getValues(); sheet.getRange().setValues(results);Обработка ошибок:
javascript
try { // Основная логика } catch (error) { Logger.log('Ошибка: ' + error.toString()); SpreadsheetApp.getUi().alert('Ошибка', error.message); }🚀 Особенности реализации:
Оптимизации:
- Кэширование результатов в памяти
- Минимизация обращений к Google Sheets API
- Пакетная обработка данных
Масштабируемость:
- Поддержка до 1000+ пользователей
- Линейное время выполнения
- Эффективное использование памяти
Надежность:
- Валидация входных данных
- Обработка edge cases (нечетное количество)
- Логирование всех операций
📈 Метрики производительности:
- Время выполнения: ~2-5 секунд для 100 пользователей
- Память: ~1MB для обработки данных
- API вызовы: Минимизированы через batch operations
🔄 CI/CD и деплой:
Среда разработки: Google Apps Script Editor
Версионирование: Git + Google Apps Script встроенный контроль
Деплой: Автоматический через Google Cloud Platform
Мониторинг: Google Apps Script Dashboard + Custom логирование https://docs.google.com/spreadsheets/d/1wFdR9t0BKfSGj418PrFMu8SmSc1GD5oiYMxYByKTHLA/edit?usp=sharing -
Vitaly Matsiborka 6 July 2025Я предлагаю тщится в Привате. У меня есть предложение как это все реализовать. Но это лучше обсуждать не тут.
Current freelance projects in the category Databases & SQL
About the project and tasks We have a small sales department (sales department head + 2 managers) and a database of about 220 active clients. There is an urgent need to implement a simple CRM as an operational level so that managers can record calls, agreements, and statuses in the sales funnel in real-time, while management can see which clients are "stuck" at a certain stage. At the same time, we actively use AI analytics (Claude) for working with exports, reports, anomaly detection, and P&L analysis. Therefore, the CRM is needed as a clean data source from which quality exports can be generated. What needs to be done (Stage 1 — Implementation) Audit and solution selection. Finally determine the platform together with us. We are considering Ukrainian solutions (KeyCRM or SalesDrive) as integration with Ukrainian telephony and Nova Poshta is important. We are also open to considering Pipedrive. System setup. Creating a sales funnel, client cards, and configuring fields according to our specifics. Integrations. Connecting telephony, messengers, and Nova Poshta. Data import. Correct transfer of the existing client base (about 220 contacts) from current files. Training. A brief briefing for the sales department head and two managers on the rules for managing deals to ensure data cleanliness and quality in the CRM. Further tasks (Stage 2 — Support) Technical support and refinement of automations during the work process. Monitoring the correctness of data exports for further AI analytics. Who we are looking for A specialist with experience in implementing KeyCRM, SalesDrive, or Pipedrive (please include examples or cases in your response). A person who understands the principles of building sales analytics and can configure data exports without "garbage". A responsible specialist ready for long-term cooperation and project support. In your response, please indicate Your experience with KeyCRM, SalesDrive, or Pipedrive. Estimated cost and time for basic setup for our team (3 users). Whether you are ready to further administer the system and under what conditions.
About the Company Trading company. We work with a product group of more than 2000 items across different categories.Current Situation Currently, the nomenclature is maintained in Google Sheets — data is consolidated by tabs (categories). Tab Structure: Product name Price groups: cost price, wholesale, retail Characteristics: weight, quantity per package, etc. Important: the number of columns varies for different product categories, as they have different characteristics.Why the Current Solution is Inadequate Google Sheets does not allow setting access rights at the level of individual columns. We need to: Grant users rights to view certain columns (for example, only cost prices) Grant rights to edit certain columns (for example, retail prices) While restricting access to other columns in the same tabWhat Needs to Be DoneMain Requirements Flexible Rights Management System Access at the level of individual columns (read/write) Assignment of rights by roles or users Management of rights without the involvement of programmers Support for Different Data Structures Different product categories have different sets of characteristics Adding new columns/characteristics without programming Independence from Developers Administration by internal staff Adding categories, columns, users — through the interface Integration with ERP Exporting current prices to our ERP system Export or automatic integration via API Data Analysis Using AI (preferably) Ability to analyze the entire nomenclature list Enrichment, verification, recommendations — if you have ideas, please describeExpected Result A working solution in which: The nomenclature is structured by categories with different sets of characteristics Column rights are flexibly configured (view/edit) Data is exported to ERP The team can manage the system independentlyWhat We Need from You When Responding Describe in general terms how you envision the solution: What tool/platform do you propose
A deep technical verification of three PDF files for authenticity and possible signs of editing or forgery is required. Not only a visual assessment of the documents is needed. The performer must have a good understanding of the internal structure of PDF files and be able to analyze: file metadata; PDF structure and individual objects; creation history and possible editing; software used; embedded fonts, images, layers, and other elements; possible signs of re-saving, conversion, modifications, or backdating of the document; any technical discrepancies that may indicate manipulation of the files. Based on the verification results, a clear written conclusion regarding each file must be provided, indicating the identified signs, risks, and limitations of the verification. We are considering specialists who have practical experience in digital forensics, PDF document analysis, metadata, or verifying electronic files for authenticity. In your response, please briefly describe your experience, methods, and tools that you use for such verification.
General information It is necessary to develop a simple minimalist web system, the main purpose of which is to maintain a client database, create appointments for visits, and automate the process of confirming visits via SMS, sending one-time links through the API from the service itself. The project is being developed in stages. In the first stage, it is necessary to implement only the basic functionality (MVP) so that the system can be used in real work. After launch and testing, it will gradually be expanded with new modules.Main functionality of the first stage User authorization; Client database; Creating and editing appointments; List of appointments (or a simple calendar); Switching between points of sale; Integration with the SMS operator via API; Sending SMS with any text or link for visit confirmation; Confirmation or cancellation of the visit by the client via a one-time link; Displaying the confirmation status directly next to the client's appointment. At the initial stage, instead of a full calendar, the use of a simple list of appointments by days is allowed. Each day should contain a chronological list of bookings indicating the time, client's name, service, employee, and confirmation status. Later, this list can be replaced with a full calendar without changing the system structure. The system must have the ability to switch between points of sale. Each point of sale has its own list of appointments (or calendar), but they all use a common client database.
Hello. I am looking for a mentor in Linux. I have experience as a strong junior DevOps specialist, but Linux and Kubernetes are my weak points. While I have some project experience with Kubernetes, my interaction with Linux is very superficial. Creating something, adding, renaming, opening, etc. is clearly not enough. I need a mentor who can help me improve in this area. The main task is to ensure that the knowledge sticks in my head, possibly through some pet project, tasks, or something along those lines, rather than just "repeat after me." I have taken courses on my own, but they don't particularly "stick" in my head. Here is a rough list of what I think I need: - Linux/Unix systems — in-depth administration of operating systems, file systems, user and access rights management, processes and services (systemd), Bash scripting, logging, monitoring, security configuration, automation of administrative tasks; - Networking technologies — OSI model and TCP/IP stack, DNS, HTTP/HTTPS, SSL/TLS, SSH, VPN, load balancing, proxy servers, NAT, routing, network utilities (ping, traceroute, netstat, ss, tcpdump, curl), diagnosing and troubleshooting network issues; If Kubernetes can be added to this list, that would be great. Perhaps you can suggest something from your side. The format of the sessions, as I see it, is twice a week, meetings, discussions, consultations. More details can be your ideas and suggestions. Regarding the cost per hour or per month - please propose.