Roman Polunin

Work

Real-time voice translation

Diya Health, 2018

Diya Health | Co-founder and CTO | 01/2018-present

Live video calls with real-time translation in a healthcare setting - in the room and over the phone.

I set up the engineering team, processes, tooling, and CI/CD. TypeScript/React web app, mobile and desktop. Social login with Azure AD B2C and Google. Organizational login and a multi-tenant SSO bridge. PayPal on Azure App Service and Azure SQL. Image recognition for drug labels. Production later rebuilt in Azure Kubernetes, with network security, ArgoCD, and Azure DevOps CI/CD for about 30 components. Earlier: hybrid on-prem/Azure, Docker Swarm, HAProxy, Let's Encrypt, Postgres.

Ongoing, limited hours: partner on product, go-to-market, and customer acquisition. C#, SQL, TypeScript, Kubernetes in Azure.

Internal engineering platform

NBA, 2023

National Basketball Association | Senior Staff, Solutions Architect | 02/2023-07/2026

Internal custom software, not the public site. Senior director-level IC: I was the architect of the engineering platform that multiple teams shipped on - standards, shared systems, and the path from commit to production. 100% hands-on.

CI/CD on a template system I built, with configuration conventions and CLI automation, covering several types of applications. Automatic collection and analysis of pipeline data. Database change management: migration scripts, verifications, promotion through stages, repeatable DEV deployments inside CI/CD for integration testing and QA.

C#, SQL, Kubernetes in Azure and AWS.

I reported to Head of Software Engineering & Program Delivery, IT.

Realtime feed, chat, and events

IMVU, 2021

IMVU (Together Labs) | Software Engineering Manager | 02/2021-02/2023

The backends behind the client apps: social feed, profiles, realtime chat, and live events. About 100k concurrent users, 1M daily active. I hired and managed the team (five FTEs and consultants) and designed, wrote, and reviewed code about 70% of the time.

Real-time automatic moderation in social chats - external and internal APIs, latencies, connection queues, circuit breakers, SLA monitoring, packet-level debugging. Low-level network and data-tier performance work, and production telemetry. A backend for online multiplayer events: milestones, achievements, prizes.

C#, SQL, PHP, Haskell.

I reported to Senior Director, Services.

Enterprise IT automation and finance data

TCS / NetApp, 2020

Tata Consultancy Services | Technical Architect | 01/2020-02/2021

A 12-month customer assignment at NetApp.

On a global IT automation upgrade I had two engineers with me: legacy on-prem ASP.NET to Azure, a monolith split into services, a Teams chat bot, and source compatibility with hundreds of scripts written for the old platform.

The rest of the assignment I did as a principal-level IC: an enterprise finance data warehouse, master data and ETL.

In the last three months, a user interface for one of the core storage products (Golang/Vue.js).

C#, SQL, Golang, JS.

I reported to IT and product engineering leaders at NetApp.

Transaction automation for government

Simpligov, 2018

Simpligov | VP Engineering | 06/2018-09/2019

Simpligov Automation Platform: hosted multi-tenant SaaS for public-facing document workflow and digital transactions, integrated with EchoSign and DocuSign. Used by agencies including NJ DOT, CA DMV, CA Secretary of State, Sonoma County, CA BPPE, and CA Department of Technology.

After a divestiture there was a product and little engineering organization. I hired a new team and shipped the first major feature set in three months. Four major releases. Contractors, RFPs, audits, customers.

Hands-on, with the team, in Azure: CQRS over Service Bus, nested electronic forms with formulas, workload distribution, elastic PDF generation, digital signatures, migration toward .NET Core 2.2, UI load times down about 10x with Azure CDN, automated UI regression, integrations with partners over Service Bus Relay.

C#, SQL, JS.

I reported to the business owners.

Architecture across a medical group's operations

Vituity, 2015

Vituity (formerly CEP America; practice management formerly MedAmerica) | Software Architect | 11/2015-05/2018

Head of software (.NET and Java) and database architecture - cloud and on-prem SQL Server - plus engineering process. Vituity is a partnership of 8,000+ healthcare professionals. The work was the operational systems of the group, not one product: master data, HR, payroll, finance, legal entities, payer relationships, provider performance, partnership affairs, credentialing, scheduling. Highly complex data work inside that, not a generic warehouse.

Thirty-plus integration and software projects, end to end. ERP migration with Deloitte (Lawson, Salesforce, Oracle HCM, NetSuite, ADP). About 100,000 lines of operations-critical VB/ASP rewritten to C#. SSO with Okta and Azure AD. In-house enterprise directory. LMS hierarchies for credentialing. Time tracking and shift scheduling. Daily oversight and hands-on scripting.

I reported to Head of IT Software Engineering.

Transaction automation for legal operations

ThinkSmart, 2014

ThinkSmart, LLC | VP Engineering | 10/2014-07/2017

Hosted multi-tenant SaaS for document workflow and digital transactions, integrated with Adobe Sign and DocuSign. Used in legal operations at Intel, Yahoo, eBay, Facebook, Electronic Arts, and others. Acquired by Mitratech in 2018; a later chapter is Simpligov.

End-to-end delivery of the product and customer implementations. I built a professional engineering team: predictable pace, quality, performance management, people who could run operations. Hands-on: tenant-specific SSO, operations tools, customer sync APIs, DocuSign, dashboards, production support, technical audits of partner work.

Full-time through November 2015, then part-time strategic technology advisory through mid-2017, overlapping Vituity.

High-volume data and realtime distributed compute

RMS, 2012

Risk Management Solutions (now Moody's) | Principal Software Engineer | 07/2012-09/2014

RMS(one): on-prem and cloud multi-tenant products for modeling natural catastrophes and terrorism, used by the largest insurers and reinsurers, including Munich Re.

Realtime distributed compute: streaming load, transform, and output so concurrent modeling engines could run. Ingesting large volumes of customer data through mass upload APIs.

Also a query engine over non-SQL stores, plus internal libraries and devops.

Org planning for up to 2M employees

HumanConcepts, 2009

HumanConcepts | Lead Software Engineer | 06/2009-06/2012

Next generation of the OrgPlus line: hosted multi-tenant SaaS for organizational data access and modeling. Upload large org files; calculation, presentation, and data access control, including SSO; Silverlight, mobile, and web APIs. Later acquired by Saba, then Cornerstone OnDemand.

Mixed lead engineer/architect role, still in the code. I owned security, reliability, and performance. The core was the engine that ingested hierarchy and employee data and served queries in real time over in-memory data of up to 2 million employees. Hierarchy edits had to hit the next query; database indexes were too slow for that.

First author and editor on U.S. patent 8,793,489 (issued 7/29/2014). Chart layout algorithms on client and server. Conditional formatting for the org chart.

Software outsourcing, various projects

Mondo, 2006

Mondo A/S | Lead Software Engineer | 02/2006-03/2009

IT and software consultancy, outsourcing to Ukraine. Insurance automation (April 2008-February 2009). Training a SharePoint development team (2008). Bulk upload of hard-drive content - tens to hundreds of thousands of files, 10+ GB per batch, client-side deduplication, session restore after client failure (2007). Other work with Mondo and AgileMind Software. On-site design with customers in the US and Denmark.

Bank ERP

CS, 2001

CS Ltd | Senior/Principal Software Engineer | 12/2001-02/2006

B2, a complete bank ERP used by a large share of commercial banks in Ukraine, including branches of foreign institutions. Multiple 2-tier and 3-tier products. Front and back office, data-entry UI, TCP/IP and file-based interfaces to government and commercial systems, encryption and signing in flight.

A three-tier front-office for remote branches that had to stay usable below 10,000 bits per second. Shared UI and business logic compiled as two-tier or three-tier. Key technologist for the Delphi environment, including a workaround for a virtual-memory bug. Internal build, deployment, and support tools. Parse/rewrite of Delphi code and forms for mass UI upgrades and Delphi/PL-SQL dependency discovery. Oracle, SQL Server, Delphi, C++.

Fun over the years

  • Automatic build-out of a seven-VM Kubernetes cluster on a Mac - API load balancer, Ceph, Grafana, Prometheus
  • Clinical scheduling solvers: a PA/NP scheduler in MiniZinc with Gurobi and again with IBM's, to compare them honestly
  • OrgChart - organization-chart layout library, C# and JavaScript, multiple strategies
  • A tiny 3d space flying/shooting game back in 1998, Turbo C++, MS DOS drivers, device-level graphics, all the fun matrix math
  • Masters, Computer Applications, 2003, from Kharkiv National University of RadioElectronics, Ukraine
  • Taught a course on software engineering methods, to about a hundred university students
  • A small, feature-complete HR ERP for a university teachers department, covering the entire teaching community. I built it and operated it; the end users were HR employees. Reports to parent government authorities were part of it
  • Abandoned my PhD for good, some time around 2006
  • Found a bug in Borland Delphi's virtual-memory manager that leaked virtual memory; worked around it by plugging in Doug Lea's allocator (dlmalloc), compiled as C++
  • Found a problem in the .NET 6 networking stack on Linux: abortive close set SO_LINGER on an inherited listen socket. dotnet/runtime#70311, fixed in .NET 7