Python / automation
Workflow automation and internal tools
If people keep moving the same data between spreadsheets, a CRM and files, we can start with one of those workflows. There is no need to replace every system at once.
Tell me about the manual work ↗Start with the actual workflow
Show me a typical run: what arrives, what someone changes by hand and where the result goes. Exceptions matter too, including missing fields, unexpected formats and duplicate uploads. This helps define the tool’s boundaries and identify decisions that should stay with a person.
Choose the interface around the work
Local file processing may suit a desktop application. Several employees may need an internal web tool with roles. Telegram can be a lightweight way to start a job or receive a notification. I choose the format after looking at the process; sometimes connecting the systems already in use is enough.
Batch processing with a concrete output
For the Image Template Tool, I replaced repetitive image composition with configurable templates and batch processing. It has handled over 100,000 overlays. The first client uses it daily and referred a second customer, whose workflow I adapted it for. That is evidence from one product, not a universal savings promise.
Connect the next step too
Automation does not end with a generated file. My projects have connected processing to S3 and Excel, inventory to webhooks, and photo delivery to Bitrix24 and Yandex Disk. For your workflow, we will map the source, storage, permissions and behavior when an external service fails.
A useful first version can be small
We can automate one operation and check its output against real examples. That gives us a basis for deciding what comes next: a queue, a dashboard, processing history or another integration. Further work is scoped separately instead of packing every possible feature into the first version.
What helps us get started
- A sanitized input sample and the desired output
- The manual steps and how often they repeat
- The systems that currently exchange data
Missing something from the list? That does not prevent us from starting. Just explain the situation in your own words.