Joachim Kuebart, Developer in Berlin, Germany
Joachim is available for hire
Hire Joachim

Joachim Kuebart

Verified Expert  in Engineering

Software Developer

Location
Berlin, Germany
Toptal Member Since
May 19, 2015

Joachim has worked as a professional programmer for more than 20 years. He has a vast experience designing, developing, and deploying large, highly reliable software systems. Recently he has also gained experience implementing responsive web applications using ECMAScript 6, HTML5/CSS3, and ReactJS.

Availability

Part-time

Preferred Environment

C++, Git, Windows, OS X, Linux

The most amazing...

...code I've written enabled co-operative multitasking in a JavaScript engine using continuations.

Work Experience

Freelance Systems Programmer

2015 - PRESENT
Konferenz für Kirchliche Bahnhofsmission
  • Engineered an overhaul and extension of a legacy database system with a CGI-based web application.
  • Ensured reliable operation by fixing code quality issues and adding required new functionality.
  • Improved MySQL database schema to be fully normalised, reducing database size and improving index performance for common queries in the process.
  • Removed string concatenation in PHP's HTML output with a template engine to remove cross-site scripting vulnerability.
  • Changed ad-hoc database access code from PHP's HTML templates and replaced with an object-oriented Data Mapper design pattern.
Technologies: CSS3, HTML5, PHP, SQL, MySQL

Data Analysis Consultant

2016 - 2016
Expert Network GmbH
  • Integrated various data sources into an Microsoft SQL database for statistical analysis.
  • Provided technical consulting on data collection and writing analysis software in R.
  • Fixed, optimized, and enhanced a linear regression model written in R to be more widely applicable and faster.
Technologies: R, SQL, Microsoft SQL Server

Freelance Systems Programmer

2016 - 2016
Parametric Technology Corporation
  • Added (de)serialization for JavaScript objects to an embedded JavaScript VM. This allowed for persisting objects to disk, comparable to java.io.ObjectOutputStream/ObjectInputStream.
  • Designed and implemented an algorithm to serialize and deserialize a cyclic object graph, taking into account JavaScript's special 'prototype' links which cannot be used to break up the graph, but constitute an acyclic subtree.
  • Developed a file format for storing JavaScript objects of different classes, as opposed to JSON which just supports plain Objects and Arrays.
  • Designed a Serializer class with an API which supports all native JavaScript classes automatically and allows registering custom classes by registering their respective prototype objects.
  • Designed an interface that custom classes can implement to hook into the serialization and deserialization performed by the Serializer class, consisting of optional writeReplace() and readResolve() methods.
Technologies: C++14, C++11, C++

Freelance Systems Programmer

2014 - 2016
Parametric Technology Corporation
  • Implemented a remote debugger for an embedded JavaScript VM.
  • Added WebSocket interface for remote debugging using C++14 and Boost.Asio.
  • Wrote debugger GUI in HTML5/CSS3 and JavaScript.
  • Implemented JavaScript toolkit for GUI components that can be detached from the DOM at any time if the debugger connection is lost, and reattached after the connection is reestablished to allow users to continue working where they left off.
  • Implemented an extension of Google's remote debugging API which supports more general host embeddings than web pages in a browser.
Technologies: JavaScript, CSS3, HTML5, Boost.Asio, C++

Programmer

2012 - 2013
think-cell Software GmbH
  • Reworked the Windows API interception for drawing a GUI overlay.
  • Solved problems in the inter-operation of PowerPoint and the Windows API.
  • Acquired a thorough understanding of the Boost C++ library and recent C++11 features such as lambdas, move semantics, perfect forwarding, and r-value references.
  • Enhanced a library for serializing native C++ objects to XML.
  • Fixed bugs discovered by users and reported through the company's bug tracker.
Technologies: Boost, C++

Senior Programmer

2006 - 2011
Parametric Technology UK, Ltd
  • Added continuation support to a popular JavaScript VM in order to allow scripts to work within an application while using back-tracking algorithms.
  • Contributed to a C++ template library for wrapping C++ objects in JavaScript objects.
  • Worked on debugging infrastructure for the JavaScript VM.
  • Implemented a clipping algorithm between arbitrary polygons using precise integer arithmetic.
  • Worked on a code generator for C++ wrappers based on interface specifications in W3C's XML-based specification language.
Technologies: Java, JavaScript, C++

Programmer

2005 - 2006
Südwestrundfunk
  • Worked on implementing a large-scale J2EE database system using Enterprise JavaBeans (EJB) technology.
  • Was in charge of setting up a robust build infrastructure using Ant and Eclipse.
  • Worked on a Swing GUI Java-client used for data entry and query.
  • Integrated the bug tracking system with the nightly build server.
Technologies: Eclipse, Ant Design, Hibernate, Swing, Java, Jakarta EE

Researcher

2004 - 2005
DaimlerChrysler Research
  • Developed a thesis on "Rule-Based Data Quality Mining", describing how to use association rules for error discovery in very large unknown data sets and evaluating the effectiveness in synthetic as well as real-world applications.
Technologies: Java, Perl

Programmer

1995 - 2003
Süddeutscher Rundfunk
  • Added TCP/IP services to a legacy, mainframe-based database system to allow modern clients written in Java to connect to it.
  • Developed a CGI-based GUI.
  • Developed a Java class library for accessing the mainframe database via TCP/IP.
Technologies: Java, CGI, TCP/IP, C, PL/I

Programmer

1998 - 1998
clara GmbH
  • Translated a class scheduling system for schools from Pascal into a database-specific proprietary programming language (4D).
Technologies: 4D, Pascal

Languages

HTML5, CSS3, C, CSS, JavaScript, C++, R, SQL, Python, Java, Perl, PL/I, Pascal, C++11, C++14, PHP

Frameworks

Boost, Dancer, Swing, Hibernate, Ant Design, Bootstrap 3, Bootstrap

Libraries/APIs

jQuery, D3.js, React

Tools

Microsoft Visual Studio, Subversion (SVN), CVS, Git, Perforce, Mercurial, Xcode, Eclipse IDE, Apache Ant

Paradigms

Responsive Web Design (RWD), Template Metaprogramming

Platforms

BSD, Windows, Linux, MacOS, Eclipse, OS X, Java EE, Jakarta EE

Storage

MySQL, Microsoft SQL Server, SQL Server 2008

Other

Algorithms, Data Structures, CFWheels, TCP/IP, CGI, 4D, Boost.Asio, Jakarta EE Design Patterns

1999 - 2005

Diplom Degree in Mathematics, Computer Science

Universität Ulm - Germany

2003 - 2003

Honours Thesis in Pure Mathematics

University of Adelaide - Australia

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring