Joachim Kuebart, Developer in Berlin, Germany

Joachim Kuebart

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.

Joachim is available for hire
Hire Joachim

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

2015 - PRESENT

Freelance Systems Programmer

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
2016 - 2016

Data Analysis Consultant

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
2016 - 2016

Freelance Systems Programmer

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++
2014 - 2016

Freelance Systems Programmer

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++
2012 - 2013

Programmer

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++
2006 - 2011

Senior Programmer

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++
2005 - 2006

Programmer

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, Hibernate, Swing, Java, Jakarta EE
2004 - 2005

Researcher

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
1995 - 2003

Programmer

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
1998 - 1998

Programmer

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

Skills

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, 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, Ant, 4D, Boost.Asio, Jakarta EE Design Patterns

Education

1999 - 2005

Diplom Degree in Mathematics, Computer Science

Universität Ulm - Germany

2003 - 2003

Honours Thesis in Pure Mathematics

University of Adelaide - Australia