Welcome to Dima's freelance profile!

Malt gives you access to the best freelancers for your projects. Contact Dima to discuss your project or search for other similar profiles on Malt.

Dima Slivin

Software engineer, web development

Moves to Berlin, Berlin, Frankfurt am Main, Hamburg, Munich, Cologne

  • 52.517
  • 13.3888
Propose a project The project will only begin when you accept Dima's quote.
Propose a project The project will only begin when you accept Dima's quote.

Location and geographical scope

Location
Berlin, Germany
Can work in your office at
  • Berlin and 50km around
  • Berlin
  • Frankfurt am Main
  • Hamburg
  • Munich
  • Cologne

Preferences

Project length
  • ≤ 1 week
  • ≤ 1 month
  • Between 1-3 months
  • Between 3-6 months
  • ≥ 6 months

Verifications

Languages

Categories

Skills (23)

Dima in a few words

I have 20 years of a very diverse experience working in both engineering and management roles for major tech companies and startups, including my own, ranging from fintech to the automotive industry. As a freelance web engineer, I help businesses and technical teams build web applications with complex client-side logic. That includes but not limited to:
• Enterprise-size B2B products.
• Drawing and visualization tools.
• 3D graphics.
• BI and analytical tools.
• Real-time communication and multi-user collaboration platforms.
• Offline-first applications a.k.a. PWAs.
• Native desktop applications using Electron and CEF.

I am a firm believer in a pragmatic and value-oriented approach, which, combined with a T-shaped skill set, allows me to solve customers' problems most flexibly and cost-effectively.

I speak Javascript and Typescript, and I am comfortable with all major UI frameworks and local state management layers, as well as server-side and cross-platform Javascript. I build web applications in AWS, or GCP clouds and use modern automation tools for DevOps. I use React Native for mobile development. I advocate and establish agile practices, coach teams, and write technical documentation.

The experience section below contains several sample contracts to showcase the problems and the approach I used to solve them.

Experience

Ree Technology

High Tech

Senior software engineer

Berlin, Germany

January 2020 - June 2020

I have developed 2D and 3D visualizations for the autonomous driving platform. Details are subject to NDA.

Myinfomonitor

Digital Agency and IT company

Senior software engineer

Tampere, Finland

November 2017 - January 2020

Myinfomonitor provides solutions that help aggregate and visualize manufacturing and operational data in real-time to facilitate the transition to Industry 4.0. I have architected and developed the client-side part of the low-code/no-code platform that allows the users to construct informational dashboards and describe their behavior logic using a visual DSL. The main requirement was to give the users the freedom to go beyond a limited set of pre-defined widgets and to let them design and animate virtually anything. To allow that, I developed a full-featured graphical editor using the mxGraph library (draw.io's open-source engine) that allowed the users to draw and manipulate SVG shapes. The system has undo/redo and copy/paste functionality. The dashboard content can be imported from and exported into a file, along with the data subscription settings and the visualization logic. To let the users describe the visualization rules and apply them to the drawn shapes and text, I have developed a custom DSL based on Google Blockly. I have also added a set of pre-programmed widgets to account for the most common scenarios, like displaying an area map with the dynamic markers, drawing a chart with the live data, or adding a simple table with numbers. Javascript and HTML/CSS editors were integrated into the UI to allow describing the logic with plain Javascript (executed in a sandboxed environment of an iframe) to give the advanced and technical users more control over the system's behavior. The users could subscribe to multiple data sources and receive live updates over the Websockets. The system is live, and multiple production plants in Europe are using it.
JavaScript React.js redux websockets Redux Saga Redux Observables rxjs d3.js SVG mxGraph JWT OAuth Google Blockly Leaflet.js

Upwork

Digital Agency and IT company

Senior software Engineer

Santa Clara, United States of America

September 2017 - December 2017

Upwork is the world's largest freelance marketplace and collaboration platform with a complex architecture where the front-end part consists of multiple single-page applications. The communication section is a large and essential part of the platform. At that time, the platform's codebase consisted mainly of the legacy code in Angular 1.x that needed refactoring to meet the new standards of performance. Vue.js was selected as the new tool, partly due to the syntax similarities. The microfrontends architecture was adopted, and both Angular 1.x and Vue.js coexisted in the UI, to allow the incremental refactoring and upgrades. My team and I have refactored the messaging section that uses Websockets to send and receive messages and have added the voice and video call functionality based on WebRTC API.

Drooms GmbH

Digital Agency and IT company

Senior software engineer

Frankfurt am Main, Germany

March 2016 - October 2017

External recommendations

Check out Dima's recommendations

Education