Skip to main content

Dev Station Technology

DevOps

The machinery that decides whether release day is boring

Pipelines, environments, monitoring and rollbacks. We have shipped through Azure DevOps on regulated work and staged firmware across device fleets where a bad release reaches hardware you cannot walk up to.

Book a 30-minute scoping call See how we ship

If you deploy weekly without drama, you do not need us for this.

Five questions that tell us how bad release day is.
How long from merge to live Minutes or daysAsk
Who is allowed to deploy One person, or the teamAsk
How do you roll back And has it been triedUsually not
Who finds out first Monitoring, or a customerUsually customer
What breaks staging Drift from productionAsk
Two red answers here explain most late releases.

Delivery work we have done

  • Azure DevOpsPipelines on regulated client work
  • IoT WorkzStaged firmware across device fleets
  • Prometheus and GrafanaAlerting that reaches a person
  • HandoverPipelines your team runs after we leave

The honest question first

DevOps is a symptom word

People rarely want DevOps. They want releases that stop hurting. Those are different problems with different fixes, and only some of them are ours.

Not a pipeline problem

Fix these first

  • Nobody agrees what done means, so releases stall in review
  • Testing is manual and takes two days
  • One person holds all the deployment knowledge
  • The application cannot run twice without a database conflict

A better pipeline makes these worse, faster. We will point at the real cause.

This we can fix

Delivery machinery

  • Builds that pass locally and fail in the pipeline
  • Staging that does not resemble production
  • No rollback anyone has actually tested
  • Secrets pasted into configuration by hand
  • Outages found by customers before monitoring
  • Releases to devices in the field that cannot be undone

The last one is the sharpest. On device fleets we stage rollouts so a bad firmware release can be stopped partway.

Plain definitions

Two terms that get bought without being defined

Both are worth understanding before you agree a scope, because both can be sold to you at any size.

What is CI/CD, in one paragraph?

Continuous integration means every change gets merged and tested automatically, so problems surface within minutes instead of on release day. Continuous delivery means the tested change can go to production on demand, by a button rather than by a person following a document.

The value is not speed for its own sake. It is that a small change is easy to reason about, and a release that happens weekly is far less frightening than one that happens quarterly.

What is infrastructure as code, and when is it worth it?

It means your environments are described in files kept in version control, so staging and production get built from the same source instead of by memory. Change the file, review it like code, apply it.

It is worth it the moment you have more than one environment or more than one person deploying. Below that it is paperwork. The clearest symptom that you need it is staging behaving differently from production and nobody being able to say why.

What we set up

Six pieces, in the order we usually do them

A build anyone can run
Same result on a laptop and in the pipeline. Until that holds, nothing else is worth automating.
Environments from definitions
Staging built from the same source as production, so drift is visible instead of surprising.
Automated tests in the pipeline
Regression running on every change, handed over with documentation so your team can extend it.
Secrets in a vault
HashiCorp Vault on the IoT platform, or the cloud provider's own service. Never in the repository.
Monitoring and alerting
Prometheus and Grafana, with alerts routed to a person who can act and an escalation if nobody does.
Rollback you have rehearsed
Including staged rollout for anything reaching devices in the field, where stopping partway matters more than speed.

What people ask us for

Six shapes this work takes

Most engagements here are weeks rather than months, and they end with your team running it.

First pipeline, from nothing
Where deployment is one person with a laptop and a document. The first goal is that anybody on the team can release, not that releases are frequent.
Rescue of a pipeline nobody trusts
Where the pipeline exists and everybody works around it. Usually flaky tests and an environment that drifts, and both are fixable.
Automated regression added to an existing build
Handed over with documentation so your team extends it, rather than a suite only we can maintain.
Monitoring and alert routing
Alerts that reach a named person with an escalation when nobody answers. An alert nobody owns is noise with a schedule.
Staged rollout for devices in the field
Where a release reaches hardware you cannot walk up to. We built firmware rollout that can be stopped partway on the IoT Workz fleet.
Handover and training
The engagement most suppliers avoid quoting. We would rather train someone on your side than become a dependency.

Tell us what release day looks like

Three fields. An engineer reads it, not a sales rep. You get an answer within one working day.

  • We work out whether the pain is the pipeline or something upstream
  • You get a written view on what to fix first, with a cost band
  • No obligation, and no phone number needed to start

Our work

Shipping to things you cannot walk up to

Case study, IoT platform

Firmware rollout that can be stopped halfway

On the IoT Workz platform a release travels all the way to ESP32 devices installed at customer sites. We built over-the-air delivery as a staged rollout that can be paused, with Prometheus and Grafana watching the fleet, and the platform running on Docker and Kubernetes in the client's own infrastructure.

  • Kubernetes
  • Docker
  • Prometheus
  • Grafana
  • Vault
  • Kafka
Critical alarms in live operation
Zero
Firmware rollout, stoppable partway
Staged
Infrastructure ownership after handover
100%

On client-side delivery we work in Azure DevOps, including on safety compliance software.

Technology

What we work in

We use what your team already knows. Migrating you to our preferred tooling is a cost you would carry after we left.

Pipelines
Azure DevOps, GitHub Actions and GitLab. We have shipped regulated client work through Azure DevOps.
Containers
Docker for build and runtime parity, Kubernetes where the workload earns it.
Testing
Selenium regression running in the pipeline, handed over with the documentation needed to extend it.
Secrets
HashiCorp Vault on the IoT platform, or your cloud provider service. Nothing in the repository.
Monitoring
Prometheus and Grafana, watching the fleet during a release as well as the servers.
Device delivery
Over-the-air firmware rollout, staged and stoppable, which is the difference between updating a fleet and gambling with one.

Who does the work

Twenty engineers, eight of them senior

Delivery machinery is only useful if the people who inherit it can change it. That constraint shapes how we build, and it is easier to hold across a team of twenty than across a rotating bench.

Engineers in Ho Chi Minh City
20
Senior engineers
8
Average experience
5+ yrs
Working with US, UK and EU teams
10+ yrs

You interview whoever we put forward. Ask when they last rolled back a release in anger, and listen for whether the answer has details in it.

How we work

Five engagement models, and you pick how much you keep

The models differ in one thing: how much of the management you hand over. Everything else, including who owns the code, is the same in all five.

Changing model later is normal. Augmentation into a dedicated team is the common direction, and the people stay.

Engineers join your team and work inside your process, your board and your code review.

Team control
You manage the day to day
Pricing
Monthly per person, by role and seniority
Minimum
1 month

A team that works only on your product, with a lead on our side running delivery.

Team control
Shared. Our lead runs delivery, you set priorities
Pricing
Monthly per role, lead included
Minimum
3 months

A long-term engineering site under your standards, where we carry recruitment, HR, payroll and equipment.

Team control
You direct the work, we run operations
Pricing
Monthly per role plus site costs
Minimum
6 months

One price for a scope that is genuinely settled, with the overrun carried by us.

Team control
We deliver, you accept against written criteria
Pricing
Fixed bid, paid against milestones
Minimum
Project based, usually 10 to 14 weeks

Everything in the centre model, with the whole team moving into your own Vietnamese entity on an agreed date.

Team control
Transfers from us to you
Pricing
Monthly per role, transfer price agreed up front
Minimum
2 to 6 years

FAQs

Questions we get on the first call

Can you work in our existing tooling?

Yes. Azure DevOps, GitHub Actions, GitLab. We use what your team already knows rather than migrating you to our preference.

Do we need someone full time?

Usually not at first. Most of the value is in a few weeks of setup, then a smaller ongoing arrangement. We will say when a full-time role is genuinely warranted.

Can you fix our pipeline without touching the application?

Sometimes. Often the pipeline is fine and the application cannot be deployed twice safely. We will tell you which one you have.

What about releases to hardware in the field?

Staged rollout with the ability to stop, plus monitoring of the fleet during release. Pushing to everything at once is how a fleet gets bricked.

Who runs it afterwards?

Your team. Pipelines, definitions and runbooks are handed over, and we would rather train someone than become a dependency.

Do you do on-call?

We can cover a period during and after launch. Long-term on-call belongs with the people who own the product.

What does this cost, and how long does it take?

Most of the value lands in three to six weeks of setup. A larger piece, where the application itself cannot be deployed safely twice and needs work before any pipeline helps, takes longer. Ongoing support afterwards is deliberately small. Which engagement model you pick decides how any of it is billed, and the models are set out above.

How do we know whether it worked?

Four numbers, measured before and after. How long a change takes from merge to production, how often you release, what share of releases cause a problem, and how long it takes to recover when one does. We take a baseline in week one so the argument at the end is about evidence rather than impressions.

What is DevSecOps, and is it a separate thing to buy?

It is the practice of putting security checks inside the pipeline rather than at a gate before release. Dependency scanning, secret detection in commits, and the build failing when something known-vulnerable arrives. It is not a separate product or a separate engagement, and any supplier quoting it as one is selling you a rename.

Describe your last bad release

What broke, how you found out, and how long it took to undo. Those three answers point straight at what to fix first.

Book a 30-minute scoping call Read what is not a pipeline problem

Let's Talk