Skip to content

Senior Software Developer, Nipro Digital Technologies Europe

September 2023 – June 2025, Brugge, Belgium (hybrid)

Summary
  • Led the end-to-end design and implementation of multiple critical features for the NephroFlow dialysis management application (Ruby on Rails, PostgreSQL), delivering complex modules such as a dynamic unit conversion system, and from-scratch OIDC/LDAP authentication integration.
  • Engineered key data and reporting solutions, automating the generation of complex regulatory reports by handling numerous edge cases in production data, and implementing the foundational backend architecture for a new analytics dashboard which uses dbt and Cube.js.
  • Served as the company's subject matter expert on LLMs and their integration, advising colleagues across the company and leading a successful series of exploratory hackathons.

Nipro Digital Technologies Europe, a subridiary of the global Nipro Corporation, is a medical technology company specializing in software for renal care. Their core product, NephroFlow, is a mature and comprehensive dialysis management platform used by clinicians to digitize and manage the entire workflow of dialysis treatment. The application operates within the highly regulated European medical software landscape, and is used by dialysis centres around the world. I worked on the web application component, which is built with Ruby on Rails and PostgreSQL.

As a senior software developer on one of the core product teams, I was responsible for the full lifecycle of several new features, from technical analysis and design to implementation and release. My work involved developing new capabilities for the NephroFlow platform, improving existing functionality, and tackling complex technical challenges.

I took end-to-end ownership of several technically demanding platform features. One such project was the implementation of a dynamic unit conversion system. Previously, users had to manually convert measurement values (e.g., blood glucose levels) before entry, leading to potential errors. I designed and built a system that allowed users to select the input unit directly in the interface, which then handled the conversion and storage automatically, improving both usability and data integrity. I also engineered the platform's OIDC and LDAP integration from the ground up, delivering a critical feature for enterprise clients requiring robust, modern authentication solutions.

My role also involved significant work in the application's data-intensive environment. I engineered the automation of complex regulatory reports for Belgian authorities (e.g., RIZIV/INAMI), which replaced a time-consuming manual process. This required careful handling of numerous edge cases and inconsistencies within large sets of production hospital data. Additionally, I contributed to the modernization of the platform's analytics capabilities by implementing the foundational backend architecture for a new statistics dashboard, which uses Cube.js to provide new visualizations and insights based on existing dbt data models.

In addition to my technical duties, I served as a crucial cultural and technical bridge for collaboration. When a delegation from a Japanese partner company visited to explore market expansion opportunities, I supported this initiative on multiple fronts. Technically, I directly mentored an engineer embedded in our team, guiding them on the specifics of our Ruby application and development practices. To make them feel welcome, I also acted as a cultural host; for instance, my wife and I gave some members of the delegation a tour of Bruges, a gesture that they greatly appreciated.