Denis Ok
Verified Expert in Engineering
Software Developer
Phnom Penh, Cambodia
Toptal member since March 9, 2016
Denis is a full-stack developer with a strong background in front-end technologies and UI/UX, and has recently turned his attention to React. A former software engineer at Microsoft, he delivered scalable projects used by millions. He contributed to the F# language and was the main contributor to Visual F# Power Tools. Denis invented a high-performance Loop 3D surface subdivision algorithm, built custom plugins and eCommerce sites, and synchronized systems across multiple devices for Xbox Music.
Portfolio
Experience
- JavaScript - 7 years
- F# - 7 years
- HTML - 5 years
- MySQL - 5 years
- React - 5 years
- Azure - 4 years
- Angular - 2 years
- .NET Core - 2 years
Availability
Preferred Environment
TypeScript, C#, F#, .NET, Azure, Visual Studio, React
The most amazing...
...project I've worked on is the Visual F# Power Tools, bringing a pleasant development experience to F# developers—as this wonderful language deserves it.
Work Experience
Senior Full-stack Engineer
Defacto
- Revamped the whole web app and integrated the new design from Figma to React/Material UI in 2022.
- Developed and maintained the client-facing front-end web app in React/TypeScript, especially the invoice/loan stories (special care with dates, user-friendly alerts for late repayment).
- Implemented diverse back-end API/integrations with partners (loan detection, POC, etc.).
- Reduced the loan recovery team's time spent per late repayer by automating the sending of legal formal notices and order for payment. Worked with our with IT service providers to adapt their APIs to our needs.
- Helped revamp the web app again for the 3rd UI edition, using React Remix and Tailwind in 2024.
Senior Software Engineer
The Foundry
- Developed a construction eCommerce website using Strapi, a headless CMS as a GraphQL back end (configuration and extension using code), and Next.js for the front end.
- Implemented designs from Figma wireframes into code using Bootstrap and Material UI.
- Implemented JWT-based authentication using Facebook login and support for multiple user roles and permissions.
- Chose a React Context API instead of Redux for state management to account for less complexity and easier onboarding concerning other team members.
- Implemented mobile authentication using Twilio services.
- Delivered multiple UI/UX based on three user roles: unauthenticated, normal user, and supplier.
Front-end Developer
Toptal
- Implemented Figma designs into real React web pages with pixel-perfect layout, using the Material UI library.
- Optimized a heavy and long list of data with virtualization using the react-window library.
- Conducted deep customization of Material-UI component's appearance.
Senior Software Engineer
Okoone
- Joined an ongoing effort of porting a legacy LightSwitch C# web app to Angular/TypeScript for Clevy Links (https://clevylinks.com/), a logistics platform dashboard with a role-based authorization system.
- Rewrote some critical parts of the existing TypeScript code (Angular components).
- Implemented a code review process to the existing team and team coding guidelines (based on my former experiences).
- Enforced build and unit test checks on the existing Jenkins CI system.
- Created a baseline unit test suite for the existing code (about 100 tests).
- Developed a baseline end-to-end test suite based on Cypress.io for more complex UI scenarios ( around 20 tests) to serve as "learn by example" material to the junior and senior team members.
Senior Software Engineer
Contract with WriteLabel (Toptal Client)
- Coded a Kafka-based message processing microservice to create N-N mappings in a join table and keep entities synchronized when they are added (users and groups relationships), all written in F#.
- Performed some large refactoring tasks in the codebase, including SQL queries.
- Added unit tests to existing microservice code that was not written by myself, which thus required a lot of analysis and deep understanding of the business logic.
Back-end Developer
Comedy Wire
- Rewrote and simplified around 50 HTTP endpoints from the legacy Java back end to F#/ASP.NET Core.
- Implemented complex MySQL optimization (indexes and efficient query writing) for a database with millions of entries created per day.
Full-stack Software Developer
Agora Opinion (Freelance Work)
- Installed an IoT PHP back end connected to 300 voting devices for toilet cleanliness satisfaction, sending approximately 10,000 requests per day and having SMS and email alerts (data stored in a MySQL DB).
- Implemented the full front-end user experience using Laravel, AngularJS, supporting multiple roles like administrator, local administrator, and the standard user.
- Developed a HighCharts dashboard to visualize and filter votes data by day/week/month/year and geographic area.
- Implemented Azure WebJobs in F# to issue daily reports to customers with QoS requirements.
- Maintained and upgraded the MySQL database schema for a dashboard that serves almost 200 businesses and 800 users.
- Implemented UI web testing using the F# Canopy library (Lefthandedgoat.github.io/canopy).
Software Developer
Microsoft
- Worked on the synchronization system across multiple devices (Xbox, Windows, Windows Phone, iPhone, and Android) for Xbox Music, a massively scalable music service used by millions of consumers and devices.
- Implemented the Xbox Video (Microsoft's video streaming service) watchlists system.
- Performed big-data processing and analysis to measure and ensure the quality of our cloud services.
- Implemented a feedback tool on the web client, enabling users to ask for a missing song in the music catalog.
- Developed an internal diagnostic tool to investigate issues on users' music and video collection.
Software Engineer
Tactineo
- Assisted the development of WPF software for touch-screen devices.
- Implemented custom and touch-friendly UI elements.
- Guided a touch presentation timeline visualizer/editor.
Research Intern
Dassault Systemes
- Invented and developed a high-performance Loop 3D surface subdivision algorithm based on patches.
- Developed a plugin system for an in-house 3D mesh viewer.
- Worked on automatic 3D surface parameterization without edges.
Experience
Crazy Wild Wines
https://1drv.ms/u/s!AkjqocnedssYgtQp_qQ4ifKUTsaDywIt provides me with the KPIs that are necessary for my business:
• The inventory (e.g., How much stock is left for each bottle?), taking losses into account (stored in an Excel file), and the invoices using GraphQL queries to my accounting system.
• My profit/revenue for the month.
I browse the KPIs using a React Native mobile app, as I often move around the city in Phnom Penh.
Visual F# Power Tools
F# 4.0 Language
https://github.com/Microsoft/visualfsharpToptal React Academy Project
Education
Master's Degree in Mathematics & Operational Research
Ecole Centrale de Lyon - Lyon, France
Certifications
Toptal React Academy Graduate
Toptal, LLC
Microsoft Specialist: Developing Azure Solutions
Microsoft
Microsoft Certified Professional
Microsoft
Skills
Libraries/APIs
LINQ, React, Highcharts, jQuery, Flexbox, OpenGL, Facebook API, Node.js
Tools
Visual Studio, Microsoft Visual Studio, NGINX, Figma, Terraform
Languages
F#, C#, JavaScript, TypeScript, HTML, CSS, PHP, C++, SQL, GraphQL, Python
Frameworks
AngularJS, .NET, ASP.NET, Laravel, Angular, Cypress, ASP.NET Core, Bootstrap, Windows Presentation Foundation (WPF), React Native, .NET Core, Next.js, Material UI, Tailwind CSS
Paradigms
Functional Programming, Object-oriented Design (OOD), Concurrent Programming, Agile Software Development
Platforms
Azure, Windows, Amazon Web Services (AWS), Docker, Twilio
Storage
MySQL, Neo4j, PostgreSQL
Other
Back-end, Full-stack, APIs, Domain-driven Design (DDD), Serverless, API Design, Headless CMS, Cloud, Apollo, Mathematics
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring