Moses.
All articles

26 Jan 2026 · 4 min read

Notes from a data scientist who also ships the site

I declined the lane. SQL, Next.js, and a Friday URL are the same job from different ends.

People like a lane. Data scientist or full stack. Notebook or production. Insights or interfaces.

I did not pick one. The work that pays and the work that ships both sit on this site because they are the same job from different ends: turn a mess into a thing a human can use by Friday.

The tagline is Developer • Data Engineer • Writer. The title is Data Scientist & Full Stack Developer. That is not a hedge. It is a refusal to hand a client a pickle file and a shrug about “the engineering team.”

The split that wastes money

A typical programme:

  • A data person builds a model that predicts churn in a notebook.
  • A slide says 87%.
  • An engineering team is asked to “productionize.”
  • Six weeks later the model is a cron job nobody trusts, and the UI is a CSV download.

Or the inverse:

  • A web team ships a dashboard of counts.
  • A stakeholder asks why.
  • Nobody in the room can join to the grain of the warehouse.
  • A data person is hired to “add AI.”

I have been both people. The cheaper pattern is one owner for the loop: the number, the interface, the handoff. That is the studio.

What “data scientist” means here

Not a Kaggle medal. Not a research lab.

It means I can:

  • Write the SQL that answers the meeting question, with a grain and a denominator. See SQL that survives a standup.
  • Put a scikit-learn pipeline on disease prediction with features and enough explainability that a reviewer can see the lever.
  • Build the Power BI surface for Spotify or an Amazon store without hiding logic in DAX.
  • Tell you when a model is the wrong artefact. Sometimes the artefact is a view and a recommendation.

B.Tech Mathematics from the Federal University of Technology is the floor: statistics, data structures, the habit of defining a thing before estimating it. The internships at Mentorness/CareerEX were the first time those habits met a stakeholder who did not care about the notebook. The freelance years are the rest.

What “full stack” means here

Not a tour of every framework.

It means I can:

  • Ship a Next.js product with a worker queue, as in Agatha.
  • Ship a RAG loop with citations, as in SupportIQ.
  • Ship a storefront a merchandiser can edit, as in Velo.
  • Ship HTML and SVG when a framework would be vanity, as in Secure Web.

TypeScript on the app. Python on the pipeline. Postgres when there is a record that must survive a refresh. Tailwind because I am not interested in a CSS committee. The stack is a consequence of the brief.

If the brief is an exams platform, you get React, Node, Vite, Postgres — Zyntra. If the brief is a gym membership, you get Next and a pricing grid that works on a phone — Gymzest. I do not start from a favourite.

The writer is not a brand extra

Writing is how the work travels when I am not on the call.

A runbook is writing. A metric definition is writing. A cover letter that cites the posting is writing. The articles on this site are the same muscle as the handoff folder: sentences a stranger can use.

I will not outsource that to a model and hit send. A model can draft. A human still has to know whether “net units” includes the returns that landed next week.

How the two trades fix each other

Data without a site is a brief that never meets a user. You can hide a bad grain in a notebook. You cannot hide it in a product that a job seeker uses at 11pm.

A site without data is a costume. A career platform that does not infer skills from bullets is a form. A support bot that does not retrieve is a parrot. A storefront that cannot change price without a deploy is a brochure.

When I hold both, the shortcuts get embarrassing faster. That is the point.

Practices I stole from one side and use on the other:

  • Fixtures. Matcher evals, RAG questions, merchandising sample products. Tests are not only for functions.
  • Grain. A page has a grain too. One job per screen. One primary action.
  • Denominators. A conversion tile without sessions is a vanity metric. A hero without a next click is the UI version.
  • Handoff. A model without a runbook is the same sin as an app without a README.

Identity, without the myth

I am not a 50-person consultancy. I am Moses Thomas, remote, worldwide, reachable at engrzyfer@gmail.com. Upwork Top Rated, Fiverr Level 2, open on Jobberman. GitHub xheenkhalil. The live URLs on the work page are the proof. The resume is the chronology.

I do not invent a lab. I do not pretend a membership site is a research contribution. I do not hide the HTML projects because they are not ML. The mix is the practice.

If you need a specialist who will never touch the UI, hire that specialist. If you need a specialist who will never touch SQL, hire that one. If you need the thing shipped — career platform, RAG support, storefront, membership, analytics you can present — you want the person who will still be there on Friday with a URL and a folder.

That is the job. The rest is a lane I declined.