20 min readSoftware development

Building it was the hard part. Now it’s deciding what’s worth building.

Georgios Chatzopoulos has run Stonewave from Thessaloniki since 2010, building and looking after Magento and Laravel systems for merchants. He runs a licensed payment institution as well, which puts him on both sides of every “it’s done, please check”. His answer to AI turned out not to be a tool at all.

Runs on
Asana+ Everhour
Core platform
Magento 2Laravel growing fastest
Lock-in
Noneclient owns the code
Software bill
UpAI added, nothing removed
Team
Two roles eachchanged shape, not size

IndustryWhat feels fundamentally different about building software for clients today compared with two years ago?

The hard part moved

Chatzopoulos answers in one sentence, and it is the sentence the rest of the interview keeps proving. “Two years ago the hard part was building the thing. Today the hard part is deciding what is worth building, because a first version of almost anything can appear in an afternoon.” What is left, he says, is judgment: architecture, integrations, security, and knowing which of ten possible solutions will still be standing in three years.

The second change is that the thing being sold stopped having an end date. A shop is now a living system wired to an ERP, a payment provider, a courier, a marketplace and lately an AI tool or two. “Clients don’t really buy a launch anymore. They buy someone who will still answer the phone when the courier changes its API on a Friday afternoon.”

So the requests changed shape. Integrations moved from a phase-two maybe into the first meeting, alongside marketplaces, invoicing and real-time stock. Clients also ask for AI by name, usually before they know what it is for. “‘Can we add AI?’ is the new ‘Can we make the logo bigger?’” The job, he says, is translating that into something useful: better product search, smarter support replies, automating the dull end of the back office.

The platforms underneath have shifted too, though not in the direction of churn. Magento 2 is still the core and is growing in depth rather than in count: fewer brand-new stores, more serious merchants who need performance, integrations and someone who really understands the platform. Laravel is growing fastest, because it is where custom applications and their own products get built. WordPress is steady for content, but the simple end of it is shrinking. Ionic is “the quiet one”, now a smaller and more targeted part of the work.

The third request is not a feature at all. “They ask for predictability: a fixed scope, a fixed monthly cost, a clear support plan. Fewer open-ended adventures, more ‘tell me what it costs per month and what I get’.”

What nobody asks for any more is a brochure website. “Nobody calls us anymore for a five-page site with a contact form, and honestly, that is fine. Templates and site builders have that market, and they are welcome to it.” The same goes for elaborate one-off design: clients now care about speed, conversion and how the thing connects to everything else, rather than “a homepage animation that wins awards and loses customers.”

AIWhat does AI get right, what does it get wrong, and what did not work?

“It knows the documentation. It does not know the scars.”

Ask where AI breaks and he does not answer in general terms, he answers per platform. Magento 2 carries years of edge cases: the order plugins fire in, caching and indexing behaviour, upgrade paths between minor versions, the gap between what works in developer mode and what survives production. “AI often proposes a solution that is correct for Magento in general but wrong for this version, this theme or this combination of extensions.” WordPress fails differently, on plugin conflicts “which no model can predict because nobody has ever seen that exact combination of 37 plugins before.” Laravel is where it is most reliable, because the framework is clean and well documented.

Then the line that sums up the whole series so far: “AI is a very fast junior who has read every book and never been on call at 2am.”

Where it has clearly paid off is not in client code at all. It is in running the company. They built an internal daily briefing where AI reads their project management, time tracking, support desk and CRM data and tells the leadership what is late, what is over budget and who is waiting. “What used to be an hour of clicking through dashboards is now a coffee.”

It also read their own rulebook. In the first audit of their operating procedures, it found that only three of forty-five actually followed their own template. He calls that “humbling and very useful.”

What it cost them was checking, and one bad afternoon. “Every AI output needs a human who knows enough to say ‘no, that is wrong’.” An update to an automated task once replaced its entire instruction set and wiped out several versions of carefully tuned rules. “Lesson learned: AI needs version control and change management, just like code.”

The experiment that failed was the obvious next step: let the morning briefing run itself. It produced duplicate runs, scheduling problems and the rule wipe above, and nobody trusted something that ran unsupervised and occasionally ran twice. They moved it back to manually triggered with human review. “Automating the analysis was easy. Automating the trust was not.”

None of this made the software bill smaller. “AI licences are a new line on the bill, and none of the old tools got cheaper because of AI. Some of them added ‘AI features’ and raised prices for the privilege.” He does not think the licence line is the right comparison, though. “The real comparison is not software cost, it is people’s time. If AI removes hours of reporting, copying and checking every week, the licence pays for itself very quickly.” The risk he names is paying for AI “everywhere, inside every tool, five times over”, and his guard against it is architectural rather than frugal: “We prefer one strong AI layer connected to our tools over a dozen small AI add-ons.” What did come off the bill were the reporting and dashboard products, because their own scripts now produce the reports they actually read, and some of the older design tools, “because with AI today you can build mockups in no time.”

Clients now arrive with their own prototypes, which two years ago never happened. He treats that as a gift rather than a nuisance. “A prototype shows us what the client imagines far better than a ten-page document.” It almost never goes into production as written, because security, performance and maintainability are precisely what these prototypes skip, “and we explain that kindly, without making anyone feel silly. The client did something smart: they clarified their idea. Now we make it real.”

Nobody has yet written a no-AI clause into a contract. What he gets instead are questions about where client data goes and whether it trains anything, which, coming from the payments world, he thinks are the right questions. He expects the ban to arrive in a more precise form: “not ‘don’t use AI’, rather ‘don’t send our customer data to AI tools without a clear agreement’.”

ProcessHow does work move through the studio, and what does Everhour do in it?

The answer to AI turned out to be writing things down

A project starts with a conversation, usually a referral, and then with the part he says clients underestimate: understanding the business. What they sell, how orders flow, which ERP they run, what keeps them awake. Only then does a proposal get written with scope, hours and price. After launch the work moves into a support package. One step gets a line of its own: before launch, “the client tests with us, not alone.” And then the honest footnote: “The real version also includes a lot of phone calls, a lot of coffee and the occasional ‘small change’ that turns out to be not small at all.”

Some of that discipline is borrowed from his other company. Stonewave’s owner also runs a licensed payment institution, which means he spends half his week being somebody else’s client. “You quickly learn how stressful it is to not know what is happening with your request.” So now every message at Stonewave ends with a next step, a person and a time, and “nobody writes ‘done’ unless they checked it themselves and attached a link.” In a regulated business with audits, he adds, “you stop thinking of documentation as a nice extra. It is the product.” He is cheerful about what that has made him: “being the client turned me into a much more demanding agency owner. My team may have mixed feelings about that.”

How the work runs now

  1. 01Asana is what needs doing, Everhour is how long it took and what it cost, Freshdesk is what the client said.
  2. 02Estimates sit on every task. When one passes about 90% of its estimate, internal reporting flags it, “so the project manager can act before it becomes an overrun, not after”.
  3. 03The data leaves the timer: they read Everhour through its API every day for the morning briefing. “For us, Everhour is not only a timer, it is a data source the whole company’s reporting relies on.”
How Everhour works inside Asana

Tracked time has changed real decisions twice over, and both examples are small enough to be believable. The first was a task called “Calls”, estimated at one hour, which quietly accumulated more than twenty-four. Nothing had gone wrong; it had simply become the bucket for every client phone call. “Tracked time showed us how much time phone communication with clients really takes, which is invisible if you only look at deliverables.” They now treat it as its own tracked activity and price support accordingly.

The second was a standard security check on checkouts, priced at one hour. Tracked time kept saying two and a half. The number in the price list now comes from tracked reality, not from optimism.

And once it changed something larger. When the data showed a meaningful share of capacity sitting non-billable through a quiet period, they did not panic. They spent it deliberately, on automation and commercial work.

Asked to be blunt about where the setup chafes, he is. “The friction is in the seams.” People open a generic task just to log time against it. Project names drift between tools: when they first connected everything they found more than a hundred mismatches, and got it under twenty mostly by hand. Timers get forgotten and backfilled. What would help most, he says, is “stronger guardrails at the moment of tracking, smarter alerts when estimates are about to be exceeded, and easier ways to keep the structure in Everhour aligned with the project tool when projects get reorganised.”

PrinciplesYou say you do not like client-to-company dependency. How do you avoid it, and what does it cost?

Everything is built so the client can leave

Most agencies engineer the opposite. Stonewave hands over the code, the repository, the hosting and the credentials, builds on well-known platforms “instead of proprietary magic”, and documents the work so another competent team could pick it up.

He is clear that this costs them. “A client can leave whenever they want, and occasionally one does. But that is exactly the point. If a client stays, it is because the work is good and the relationship is good, not because they are trapped.” Then the sentence that explains the whole policy: “Recurring revenue built on dependency is fragile. Recurring revenue built on trust is the only kind worth having.” Their internal version is shorter: “we don’t deliver and disappear, but we also don’t hold anyone hostage.”

A neighbouring principle, that every project should be treated as something created from zero, turns out to mean the opposite of what it sounds like. “From zero means from zero in understanding: we don’t assume this client is the same as the last one.” It does not mean rebuilding a checkout each time. “In fact, the only way to keep that principle affordable is the opposite of from-zero engineering: proven modules, our own products, internal procedures, and AI doing the repetitive groundwork.” Save the time on the parts that should be identical, spend it on the parts that are not.

The same instinct shows up in a phrase they wrote long before generative text existed. They say they dislike web pollution, by which he means “bloated pages, ten tracking scripts doing the job of one, pop-ups on top of cookie banners on top of newsletter prompts, and content written for search engines instead of humans.” Has it improved? “No. It got worse, and faster.” Producing mediocre content at scale became nearly free, “so now we have pages written by machines, for machines, read by other machines.” What they do about it is deliberately unexciting: “lean builds, only the scripts a client actually needs, and content that a person would genuinely want to read.”

Their own website, meanwhile, sits behind a bot check, which for a company that builds websites is a deliberate statement. The reason is less ideological than it looks. “Not because we hate robots. Some of my best colleagues are AI.” It is about scrapers, credential stuffing and vulnerability scanners hammering every URL, the same protection they run on client checkouts, “so it would be strange not to use it on our own site.” And to the half of the question we were really asking: “AI crawlers are part of it, but not the main reason.” “The honest answer is that most bot traffic is not clever AI, it is dumb automation, and there is far more of it than people think.”

On open source he is unbothered that models learned from it. “It would be strange to complain that a machine learned from the same commons we learned from.” What he does miss is the second half of the bargain. “The social contract of open source was ‘use it, and recognise where it came from’. Models blur that second part.” He still publishes, but would like the industry “to find a better way to give back to the maintainers who keep the lights on.”

SellingHow hard is it to sell right now, and who do you lose to?

Nobody asks whether you can build it any more

Selling has got harder, and harder in a particular way. “Two years ago the question was ‘can you build it?’. Now clients assume everyone can build it, so the question is ‘why you, and why at this price?’” Decisions take longer, more people sit in on them, and budgets are watched more closely.

There is an upside, and it arrives late. “When a client has already been burned by a cheap solution, they arrive ready to buy quality. Some of our best clients came to us right after an expensive lesson elsewhere.”

The work itself comes almost entirely from people who already trust them: referrals, existing clients asking for the next thing, and business networking. He is active in BNI in Thessaloniki, and notes that “face-to-face relationships still matter enormously in Greece.” What changed is that past clients are now a pipeline on purpose rather than by accident, with the commercial team reconnecting about upgrades and next phases instead of waiting for the phone to ring.

They lose on price, in two shapes: cheaper local teams and freelancers promising the same thing for half, and template or SaaS platforms that are genuinely good enough for simpler shops. And sometimes they lose to the client doing it themselves with AI, which he describes without any satisfaction at all. “Usually only for a few months. Then we sometimes get the call to help with the version that grew too complex to maintain. We don’t celebrate that, but we do answer the phone.”

Money and peopleHow do you charge, what happens on an overrun, and who are you hiring?

Burning through your support hours is good news

Projects are mostly fixed price with clear scope; after launch clients move onto prepaid packages of support hours, plus hosting and the company’s own subscriptions. The direction of travel is deliberate: from a classic agency into a productized one, with more standardised fixed-price services, more of their own products, and a stated goal of half of revenue being recurring. “We are not there yet, but every month we are closer.”

Then a line that inverts how most agencies read their own numbers. “When a client consumes their support hours quickly, that is good news. It means they rely on us, and the renewal comes sooner.”

On overruns he draws the line where it belongs. If the estimate was their mistake on a fixed-price job, they absorb it: “that is the deal, and that is what fixed price means.” If the scope moved, they say so, explain the extra hours and ask before continuing. “No surprises at the invoice stage.” And every overrun is fed back into the next number, which leads to the most honest sentence in the interview: “Our estimates still tend to run optimistic. Developers are the most optimistic people on earth, right up until the third day of a ‘two hour’ task.”

The team is around fifteen and has changed shape rather than size: a clearer leadership layer, and every person carrying a primary and a secondary role. A developer is also the technical writer; a frontend developer is also a tester. “That is a conscious choice: it builds understanding across the company.”

Juniors get hired selectively, for attitude and learning speed rather than experience. What makes one stand out now is specific: “They use AI tools naturally, but they can explain every line they submit. They write clearly, because clear writing is clear thinking. And they ask ‘why’ before ‘how’.” Then the test he actually applies: “A junior who can say ‘I don’t know, but I will find out and tell you by 4pm’ is worth more than one who pretends to know everything.”

Asked what humans will still be doing in five years, he gives three things. Understanding people, “hearing what they say and what they don’t say”. Judgment and accountability: choosing between two valid architectures, deciding what not to build, saying no when no is the right answer, and being the person responsible when something breaks. And relationships, because trust is still built between people. The reason is one line long. “Nobody wants to hear ‘the model decided’ when their e-shop is down on Black Friday.”

GreeceWhat is it actually like to run a software company from Thessaloniki?

Not the part people expect

Ask what is hardest about running a software team in Greece and he skips both answers an outsider would offer. “People expect talent or bureaucracy.” The real difficulty was turning a group of capable people into a company that runs on shared process “instead of on what is in everyone’s head” — and the hard part was not writing the procedures, it was getting them used every day.

Whether clients mind where that team sits depends entirely on which clients. Greek ones do, “because they like to meet, and a meeting over coffee in Thessaloniki builds trust no video call can match.” International ones care much less, as long as communication is clear and the time zones overlap. What changed in two years, he says, is the meaning of the word: “local no longer means in the same room, it means reachable and accountable.”

“The second hardest part is August. Greece closes. Clients close. Suppliers close. Somehow, websites stay open and keep needing support.”

Keeping developers has got harder, and he does not pretend otherwise. Greek developers can now be paid abroad what a Greek company rarely can. “We cannot win purely on salary, so we compete on other things: interesting and varied work, real responsibility, a stable team, a clear plan for where the company is going, and a place where your opinion actually changes decisions. The ones who stay usually stay because they want to build something, not just close tickets.”

We put it to him that Cyprus seems, from outside, to chase technology companies much harder than Greece does, and invited him to say we had it wrong. He mostly agreed, then corrected the conclusion. Cyprus has made the clearer and more aggressive pitch, with a simpler tax and relocation story; Greece has incentives too, but a less focused message. “That said, Greece has something you cannot legislate: a much larger talent pool, strong universities and real market size. Cyprus is great at attracting company headquarters. Greece is still where many of the people who actually build the software live.”

As for the state itself, he gives it more credit than most would expect. Digital government services are genuinely better than a few years ago, and the move to electronic invoicing and tax reporting pushed a lot of businesses into digitising, which created work for firms like his. “But the state is mostly a framework, not a partner. The best thing the state does for us is when it stays predictable.”

Short answersOne sentence each.

Eight short ones

One industry cliché you don’t believe any more?
“The client is always right.” The client is always important, which is different.
Which piece of common advice in your industry is wrong?
“Never say no to a project.” Some of our best decisions were the projects we turned down.
One thing every software company should stop doing?
Using the word “launch”. Start using the word “delivery”.
One thing you wish you had started earlier?
Writing down how we should work.
Something you would never automate?
The conversation with a client when something has gone wrong.
One tool you couldn’t run the business without?
Asana and Everhour together, because without them I would be managing by feeling instead of by facts.
One piece of open source you are glad exists?
Magento, because it gave a generation of merchants a serious commerce platform they could truly own.
A prediction two years out you’d bet money on?
The winners will not be the agencies with the most developers, but the ones with the best judgment, the best processes and the most trusted client relationships.

Know what your projects actually cost

Budgets, billable rates, project margins and invoices, built from time tracked inside Asana, ClickUp, Linear, Jira and a dozen more.

Start a free trialTry everything. No card. No commitment.

Be interviewed

We interview Everhour customers about their own industry, not about us: what changed, what they got wrong, what they learned. Want to be next?