About
Hi ๐ I'm Alex Tkachev (Leksat), a software engineer.
I love building anything that lives inside a computer, and polishing it until it feels right: a UI that needs no explanation, an API with nothing left to cut, code that needs no comments.
How it started
The story
1996 Falling in love with computers
I was around 11 or 12 years old when my uncle showed me pure magic. He had a cassette tape recorder connected to a ZX Spectrum clone. The tape recorder made horrible screeching noises, and the computer turned them into games you could actually play. I was completely hooked ๐
My first PC
Around a year later, my uncle got a job at some company, and instead of his first salary they gave him an old written-off computer. It became my first PC:
- 286 processor
- 40 MB hard drive
- Black-and-white monitor that kept overheating, so I used it with the back cover removed
Floppy disks, DOS Navigator, Wolfenstein 3D. I spent a lot of time at that computer. Mostly playing games, of course ๐
That PC
A very happy me ๐ค
Upgrade to 486
Later I upgraded to a 486 and installed a sound card, and then came Doom and Doom II
. I also tried to make my own Doom maps, which never worked out: everything was complicated back then, and figuring things out without anyone to help was nearly impossible. The internet reached my town only years later.
What I learned along the way:
-
The DOS command line
-
Batch files, my first primitive programs
-
Working with archives and files in a two-panel file manager
-
Formatting floppies and making boot disks
-
Taking the computer apart and putting it back together
Windows 95
One more thing came with that first computer: a licensed Windows 95 CD with a pretty thick user manual. The problem was, Windows just wouldn't install: my computer fell short of almost every system requirement ๐. So I read that manual over and over, imagining I had Windows. By the time I finally got it for real, I was already an experienced user ๐
-
And the most important one: suffering ๐๐ญ. Hours of things not working, then a few minutes of pure joy when they finally do. This skill has helped me a lot in my professional career.
1999 Believing that I can't become a programmer
I grew up believing that without a diploma you're nobody. When I finished school, I missed the cutoff for a free university spot by a few points and couldn't afford a paid one. Years of unskilled jobs followed: laborer, furniture maker, driver. No diploma, no programming. Or so I thought.
2008 Becoming a programmer in a weird way
Even during the years of non-IT jobs, my interest in computers never went away. Once I got internet access, I found free tutorials for PHP and HTML, which back then were simple enough to learn on my own. I collected tutorials and tinkered with them, with no real goal yet.
Then I got an idea: a web portal for my hometown
A directory of every organization in town. City maps. Classifieds from locals: buy, sell, rent. Something everyone in town would use, with advertisers lining up and me making lots of money ๐ค
But I failed to build it alone
I started from the very basics, using my old tutorials. Writing raw database queries everywhere got old fast, so I started writing my own database wrapper. The deeper I went into all the details, the clearer it became that I couldn't pull this off alone. It needed a whole team.
Spoiler: my tutorials were so old that I had no idea frameworks and CMSs existed.
So I hired freelancers and found Drupal
I took out a bank loan to pay them. What they built was nowhere near what I wanted: it looked awful and worked even worse. Before demanding that they fix it, I decided to look inside. And there I found Drupal, a CMS. I was blown away ๐คฏ. You didn't have to be a programmer or write a single line of code: just click around, drag blocks from place to place, and get an amazing result.
And rebuilt everything myself
Without a second thought, I threw away everything they had done. They had used Drupal 6, but I started over on Drupal 5, because it had more modules. Soon the portal was ready. I built almost everything I wanted, except for a few small things. To finish those, I had to write code. I wrote my first module, and there was no stopping me after that.
What it looked like

The first version of the portal, as preserved by the Internet Archive. The catalog in the middle is a Drupal taxonomy, rendered by one of my first custom modules: item counts, the first few subcategories, and "..." linking to the rest.
The portal never paid off, but selling it got me a job
Then I realized that making money with a website takes much more than code: selling ads, promotion, dealing with clients. I was far more interested in building things. The portal didn't bring in much, so I put it into maintenance mode and decided to sell it.
I wanted to at least get back what I had paid the freelancers. Nobody offered anything close: the offers were around a tenth of my asking price. Then a guy offered a fifth, and I sold it to him.
While I was teaching him to run the portal, he offered me a job. He ran several small local businesses. The salary was tiny, but I worked from home and only met him now and then to show my progress. I kept extending the portal, rebuilt it on Drupal 6, and did some other work for him too.
That opened my eyes. I didn't need a diploma to get paid for writing code. I was already a programmer.
2010 Starting a professional IT career
The official Drupal community lived on drupal.org, but my English was weak back then, so I hung out on drupal.ru instead. On its forum, I saw that ShvetsGroup was hiring developers. I applied and somehow got in.
I thought programmers just write code. It turned out there was a whole new world around it. Version control alone nearly broke me. I worked there, or rather studied there, for almost two years.
The CV
2009 Self-employed
Drupal Developer, April 2009 - April 2010
Drupal-based web projects and custom distributions.
2010 ShvetsGroup
Drupal Developer, May 2010 - February 2012
Remote development for the US-based client CounselKit: service integrations, AJAX interfaces, workflow systems.
2012 NodaSoft
PHP Developer, March 2012 - June 2012
High-load e-commerce platform: PHP, MySQL, 170 sites on a single codebase, 60M+ database records.
2012 Amazee Labs
Developer -> Senior Developer, June 2012 - November 2025
That's a lot of years, but it was never the same job twice. I started on classic Drupal 6 and 7 sites and went through the Drupal 8 rewrite on top of Symfony. Then came decoupled projects with React/TypeScript frontends and Drupal as a headless content backend, and eventually projects built entirely on TypeScript. Being an agency, we kept the older stacks running too, so I worked across all of them. Meanwhile, my focus gradually shifted toward static typing, which made TypeScript-only projects the ones I enjoyed most.
Full-stack development for international clients, plus internal platform work: shared libraries, CI/CD standardization, and project workflow tooling used across all agency projects.
2025 amazee.io
Software Engineer, November 2025 - present
Engineering at a managed Kubernetes hosting provider (Lagoon platform).
- Billing platform (TypeScript, NestJS, GraphQL, Next.js): the system that turns platform usage data into customer invoices, covering metering, rating, and invoicing.
- AI-powered reporting: designed and shipped a feature that generates client-facing WAF security reports from CDN/WAF data. Prompt design, context engineering, schema-validated structured output (Claude/GPT via an AI gateway).
- Integrations between CRM, cloud marketplace, and internal systems.
I own some of these apps end to end and plan for their maintenance from the first commit: automated security alerts and weekly health reports let me catch problems before anyone notices.
How it's going
Times have changed, but business still wants "boring" software: flawless launches, smooth releases, invisible maintenance. With AI, hitting that target got easier: it takes over the time-consuming tasks, so I can spend more time learning and making the result better.
I think this blog will mostly be about working with coding agents: they're a new tool that keeps evolving fast, and my workflow changes along with it. I'll share some of the tricks I pick up along the way ๐ค
How to reach me
- GitHub: Leksat
- LinkedIn: alex-leksat
- Email: alex.leksat@gmail.com