Tom Segal · Software Developer

Tom Segal

I’m Tom Segal, a full-stack software developer based in Berlin. Since joining arzt-direkt in 2021, I have become one of the team’s longest-serving developers, working across frontend, backend and infrastructure. At different stages, I held frontend responsibility for video
consultation and frontend and backend responsibility for online appointment
booking, the platform’s largest products. Previously, I developed software for experimental nuclear physics during my PhD.

Technologies

Frontend

TypeScript
Angular
TensorFlow.js / coco-ssd

Backend and data

Python
NumPy
PyQt5
PHP
Node.js
MongoDB
Mongoose
Redis

Delivery and operations

Docker
Docker Compose
Kubernetes
Jenkins
Portainer
Ansible
PM2
npm

Observability

OpenTelemetry
Grafana
Grafana Alloy
LGTM stack
Loki
Tempo
Mimir

Software Development experience

Since 2021, I have worked across arzt-direkt’s frontend, backend and infrastructure, including the online booking architecture, video consultation, observability, OCR-based insurance-card scanning, Redis-based clustering, platform upgrades and deployment modernization.

Coordinating the arzt-direkt Kubernetes migration (2026, ongoing)

Kubernetes
Docker
Ansible

I currently coordinate migration planning, including a staged rollout roadmap and analysis of assumptions affecting multi-replica operation.

Full-stack observability implementation: Grafana Alloy / LGTM stack (2026)

OpenTelemetry
Grafana / Alloy / LGTM
Docker Compose
Ansible
Node.js

I implemented OpenTelemetry traces, metrics and logging and configured Grafana Alloy and the LGTM stack. I also bridged the services’ existing console.* logging into the telemetry pipeline and consolidated shared Ansible and Docker Compose templates across environments.

“Nutzeraccounts” — OTK staff/doctor account-management rebuild (2024–2026)

Angular
TypeScript
Node.js
MongoDB

Developed a substantial frontend and backend rebuild of staff/doctor account management.

Online appointment-booking frontend and backend (2022–2026)

Angular
TypeScript
Node.js
MongoDB

I designed and built the first versions of the appointment-booking frontend and implemented substantial parts of its backend.

My work includes waitlist notifications and claiming available slots subject to booking limits, appointment-chain editing and archiving, Angular Signals-based booking editing, and localization of the booking interface and emails.

arzt-direkt online appointment booking interface
The appointment-booking interface for selecting and requesting an available appointment. Image: arzt-direkt

Platform and dependency upgrades (2021–2024)

Angular
Node.js
MongoDB
Mongoose
TypeScript
npm

I contributed with the team to major Angular, Node.js and MongoDB/Mongoose upgrades over multiple release cycles.

Direct link generator (2023)

Angular
TypeScript
Node.js
MongoDB

I built a tool that lets practice staff generate and copy a direct booking link, together with the corresponding iframe embed snippet, for a specific appointment type or location. The link can then be placed on the practice’s own website or shared directly with a patient, skipping the main site navigation entirely.

Introduced Redis for OTK clustering (2023)

Redis
Node.js
PM2

Introduced Redis-backed shared reservation state, enabling the appointment-booking backend to run across multiple PM2 instances.

Rebuilt the arzt-direkt video-consultation application (2021)

Angular
TypeScript
Node.js

I rewrote the video-consultation application and continue to contribute to it within the team. The product supports remote appointments between patients and medical practices.

arzt-direkt video consultation interface
The video-consultation interface used for remote appointments. Image: arzt-direkt

OCR-based insurance card scanning (2021)

TensorFlow.js / coco-ssd

I built insurance-card scanning for the appointment-booking flow, including camera compatibility fixes for iOS Safari and Firefox. The pipeline combined TensorFlow.js, coco-ssd and a custom OCR implementation.

Education

Max Planck Institute for Nuclear PhysicsDoctorate in Physics

Heidelberg University · Research at the Max Planck Institute for Nuclear Physics.

My doctoral research focused on precision measurements. I also built Python and PHP software for laboratory data acquisition, monitoring and visualization.

Hebrew University of JerusalemWeizmann Institute of ScienceB.Sc. in Physics and Computer Science · Master’s degree in Nuclear Physics

The Hebrew University of Jerusalem · Master’s joint research project with the Weizmann Institute of Science.

My master’s thesis examined the production of neon-23 via the sodium-23 (n,p) reaction. I developed simulations in Python and C++/Geant4 for diffusion, effusion and nuclear reactions.

PhD Experience

Alongside the experimental work, I designed and built tools to acquire, monitor and display laboratory measurements. Two projects show how I connected measurement devices, data processing and interfaces for researchers.

PyEnvDAQ · Data acquisition and monitoring

Python
NumPy
PyQt5
Telegram

The laboratory needed to follow environmental conditions such as pressure, temperature, humidity, gas flow and magnetic flux. I built a Python application that connects directly to measurement devices and brings their readings into a graphical interface.

Using Python, NumPy and PyQt5, the application displays calibrated measurements, plots values over time, logs problems and sends Telegram notifications when readings leave their configured safe ranges. It gives researchers a live view of conditions around the experiment.

Historical screenshot: the PyEnvDAQ measurement interface.

THeWebsite · Browser-based data visualization

PHP
Python data source

I also built a PHP-based website for the research group to inspect data collected by the Python acquisition software. It plots environmental measurements and nitrogen and helium gas-flow data, with selectable time windows and channels.

The website complemented the desktop acquisition application with a browser interface for reviewing changes over time.

Historical screenshot: comparing two laboratory measurements over time.

Doctoral thesis

My doctoral work included replacing a C-based data-acquisition program with PyEnvDAQ, a Python application for monitoring laboratory instruments. It displayed raw and calibrated measurements across 25 channels, supported plotting and data export, and sent email and Telegram alerts when readings exceeded configured limits. I also redesigned the PHP web interface to support new controller and measurement data formats, visualize environmental and gas-flow data, and provide real-time calibration pre-analysis. These tools helped researchers monitor the experiment and make decisions during measurements.