R&D & Collaborations

Alongside client and product work, I’ve kept a running program of research and experiments since 2014: first on my own, and from 2017 through Momentaj. It concentrates on the hard problems underneath the products I was building: radios and power budgets, data pipelines at scale, indoor location, and how far a web framework can be pushed. This page is the short version, with a link to where the depth lives.

What I’ve worked on

2014–2017: Early prototypes

Two projects from my self-study years.

  • A Persian news corpus (2014, 2016). A crawler archived articles from a Persian news site, and an analyzer built corpus statistics from them: character frequencies, word counts and word-pair counts, with Persian text normalization. It’s my earliest language-data work.
  • An energy-submetering dashboard (2017). An ASP.NET Web API and HTML dashboards on a commercial submetering API, showing live per-phase voltage refreshed every two seconds.

2017: BLE and NFC beacon hardware

Putting NFC and BLE antennas on one board meant tracking down the root cause of their interference. The work shrank the beacon from 36 × 36 mm toward about 16.5 × 16.5 mm and cut packet loss at 10 m from 30–50% to 15–20%. Separately, an accelerometer’s current draw fell from 278 µA to 35 µA, and a via and plating redesign followed thermal cycling between −40 °C and +85 °C.

2017–2019: Indoor positioning

Four rounds of experiments relating signal strength to distance, across five gateway brands and nine beacon types. BLE fingerprinting with scikit-learn worked best with a random forest, at 85% zone accuracy, ahead of a decision tree at 84%, k-nearest neighbors at about 80% and stochastic gradient descent at 67%. Two academic collaborations grew from this work (below).

2018: A time-series forecasting course

An 11-notebook course I put together for my team. It runs from a statistics warm-up through moving averages, exponential smoothing (simple, double and triple), linear regression by normal equation and by gradient descent, autoregressive and ARMA models, and forecast-quality metrics, worked on S&P 500 prices from a public dataset. A junior team member then applied it to a real daily series.

2018–2020: uBeac platform engineering

Keeping a multi-tenant IoT platform fast under load: MongoDB ingesting more than 100 million documents a week, message retries on RabbitMQ, real-time delivery to browsers, and device security. The uBeac page has the engineering notes.

2019–2020: An LTE-M GPS tracker

I measured the tracker’s sleep current at 35 µA against the datasheet’s 4 µA, then tuned the modem’s power-saving modes across three SIM providers to reach an estimated 42 days on a 750 mAh battery. The full story is in the Tingslab case study.

2023: A market-data platform

An exploratory project to collect and validate market data. I led a team of six on the platform itself: a provider layer over three market-data APIs (Alpha Vantage, Polygon and Twelve Data) and a charting front end. Separately, I ran my own exploratory analysis, including cross-correlation across about 1,345 tickers. It all stayed exploratory.

2024–2025: Blazor Server runtime compilation and render caching

Compiling components at runtime, and caching at the renderer level, cut a page render from 45 ms to 3.8 ms and lifted the capacity of an 8-core server from about 250 to about 1,120 users. Details are on the FluentCMS page.

Academic collaborations

Some of this work was done with colleges and universities.