Search for a freelancer Post a project

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 freelancer profiles on Malt.

Dima Slivin

Software engineer, web development

Can work in or around Berlin, Berlin, Frankfurt am Main, Hamburg, Munich, Cologne

  • 52.517
  • 13.3888
  • Suggested rate €700 / day
  • Experience 7+ years
  • Response rate 100%
  • Response time 1 hour
Propose a project The project will begin once you accept Dima's quote.

Part-time, 2 days per week

Propose a project The project will begin once you accept Dima's quote.

Location and workplace preferences

Location
Berlin, Germany
Can work onsite in your office in
  • around Berlin and 50km
  • 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

Freelancer code of conduct signed
Read the Malt code of conduct

Verified email

Languages

  • English

    Fluent

  • Russian

    Native or bilingual

  • German

    Basic

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

Tech

Senior software engineer  - As a freelancer

Berlin, Germany

January 2020 - June 2020 (4 months)

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

Myinfomonitor

Digital & IT

Senior software engineer  - As a freelancer

Tampere, Finland

November 2017 - January 2020 (2 years2 years and 2 months)

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 & IT

Senior software Engineer  - As a freelancer

Santa Clara, United States of America

September 2017 - December 2017 (3 months)

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 & IT

Senior software engineer  - As a freelancer

Frankfurt am Main, Germany

March 2016 - October 2017 (1 year1 year and 7 months)

Drooms offers its clients a digital version of what's known as a data room - a secure physical room where multiple stakeholders involved in the due diligence process collectively work on sensitive legal documents, generally during mergers and acquisitions or corporate restructurings. The system stores the files in the cloud, and the clients access them using a web-based Angular SPA or a native desktop client consisting of the same SPA running on top of CEF. Multiple users can collaborate on the documents in real-time, their client applications receiving updates over Websockets, and each change undergoes a multi-stage approval process defined in the workflow manager. The team has inherited a large amount of legacy code that had to be refactored by transitioning to Angular 2.x while moving forward by adding new functionality. The major features that my team and I have developed or refactored are:

• A full-featured file manager with copy/cut/paste functionality.
• A messaging system.
• Automatic translations overlayed on top of the original document.
• Collaborative editing/commenting on the documents in the cloud.
• Full-text search across the documents.
• Advanced user permission management system.
• Workflow manager.
• Two-factor authentication.
• Multiple dashboards with access and activity statistics visualized.

Education