programming is our passion

ministry of code

Unsere Erfahrung

ministry of code wurde im Jahr 2012 von Marc Jakobs und Marko Kind gegründet.

Wir verfügen über mehr als 15 Jahre Erfahrung in der IT und Softwareentwicklung und haben gemeinsam etliche große, nationale und internationale B2B und B2C-Projekte erfolgreich abgeschlossen.

Wir entwickeln individuelle Internet- und Intranet-Software und konzipieren System- und Softwarearchitekturen. Insbesondere mit skalierenden Hochlast- und Hochverfügbarkeitslösungen haben wir langjährige Erfahrung.

Unser Schwerpunkt liegt in der Back-End Softwareentwicklung. Bei Projekten in denen Design oder umfangreichere Front-End Entwicklung benötigt wird, greifen wir auf unser gut ausgebautes Netzwerk an freiberuflichen Mitarbeitern zurück oder integrieren uns nahtlos in Ihr Design- und Software-Team.

Über die Softwareentwicklung hinaus bieten wir auch administrative Dienstleistung an. Wir konzeptionieren, installieren, konfigurieren und betreuen bei Bedarf Ihre Unix-Server und Server-Applikationen/Dienste im Rechenzentrum oder in der Cloud.

Unser Angebot

Internet Softwareentwicklung


Wir sprechen fließend Perl, Ruby und JavaScript. Wir sind spezialisiert auf Unix Back-End Softwareentwicklung, bieten aber auch Komplettlösungen inklusive Design und Front-End Entwicklung an.

Web-Applikationen erstellen wir präferiert mit MVC-Frameworks wie zum Beispiel Catalyst oder Rails, da sie eine sehr schnelle, saubere und strukturierte Softwareentwicklung ermöglichen. Wir erfinden das Rad nicht neu, sondern setzen auf bewährte OpenSource Tools, Frameworks und Module (Gems). Der Vorteil für unsere Kunden: eine flotter Entwicklungsprozess, weniger Fehler im Code und geringere Entwicklungskosten. Wir programmieren Internet- und Server-Applikationen seit mehr als 15 Jahren und wissen, welche Protokolle und Technologien sich unter unterschiedlichsten Bedingungen bewährt haben. Unsere Kunden profitieren von unserer Erfahrung durch stabile, skalierende Applikationen, die auch unter Hochlast funktionieren.

Datenbankentwicklung


Relational (SQL) oder Dokumentbasiert (NoSQL) - wir haben mit beidem Erfahrung und setzen diese Technologien sinnvoll für die jeweiligen Anforderungen und Bedinungen ein. Wir erstellen und dokumentieren Datenbankschemas und haben auch Erfahrung mit lastverteilten, replizierten Datenbanken.

Server- und Softwarearchitekturen


Ebenso wie die Architektur beim Hausbau, stellt auch die Softwarearchitektur und die Auswahl der richtigen Komponenten die Grundlage für ein funktionierendes Gesamtsystem dar. Deshalb liegt unser besonderes Augenmerk bei der Softwareentwicklung auf dieser initialen Kompenente. Da wir ausschließlich mit OpenSource (Programmiersprachen, Frameworks, Tools & Modulen) arbeiten, verfügen wir über ein reichhaltiges Repertoire an stabilen und bewährten Technologien, die wir für den jeweiligen Anwendungszweck einsetzen.

Eine effiziente, flexbile, skalierende Serverarchitektur, die trotzdem nicht das Hardware-Budget überstrapaziert ist eine Herausfoderung, der wir uns gern stellen. Wir konzeptionieren zusammen mit Ihnen die optimale Serverarchitektur für Ihre Anwendung und beraten und betreuen Sie bei der Kommunikation mit dem Service-Provider, Rechenzentrumsbetreiber oder der Einrichtung von Cloud-Infrastruktur (z.B. Amazon, Linode, Digital Ocean, Heroku).

Unix und IT Administration


Falls Sie eigene Server-Infrastruktur für Ihre Applikationen benötigen, bieten wir Ihnen Unix-Administrative Dienstleistung an. Wir installieren, konfigurieren, betreiben und betreuen Ihre (Applikation-)Server im Rechenzentrum oder in der Cloud und setzen für Sie auch gern Development-, Kommunikations-, Office oder Intranet-Server auf.

Unsere Arbeit

An dieser Stelle stellen wir Ihnen ausgewählte Projekte vor an denen wir gearbeitet haben, damit Sie eine Vorstellung davon bekommen was wir Ihnen anbieten können.


Varnish Paywall


In diesem Projekt bestand die Aufgabe darin, für ein großes Verlagshaus eine performante Paywall-Lösung auf Basis des Varnish-Cache als Prototyp zu entwickeln und sukzessive gemeinsam mit dem IT-Team des Verlages zu einer produktionsreifen Lösung auszuarbeiten. Dies beinhaltete auch Performancetests um zu ermitteln ob die Lösungsansätze den geforderten Belastungen standhalten können.

Verwendete Technologien in diesem Projekt:

  • Varnish
  • Redis
  • Linux
  • Firmenintranet


    Für ein mittelständisches Unternehmen konzeptioniereten und programmierten wir ein an eng die internen Arbeitsabläufige angepasstes Intranet. Neben einer umfangreichen Mitarbeiterverwaltung wurde auch eine komfortable Urlaubsverwaltung umgesetzt. Zukünftig ist eine Stundenerfassung geplant, mit deren Hilfe Rechnungen für Kundenprojekte erstellt werden können.

    Verwendete Technologien in diesem Projekt:

  • jQuery
  • Ruby
  • Rails
  • Linux
  • Logfile-Collector


    In diesem mehrere Monate umfassenden Projekt planten und entwickelten wir eine Plattform zur zentralen Speicherung von Logdaten unterschiedlicher Unix- und Windows-Applikationen. Die komplett in JRuby entwickelten Applikationen integrieren sich nahtlos in das Java-Enterprise Umfeld unseres Kunden und laufen unter Unix ebenso wie unter Windows. Ein besonderes Augenmerk hatten wir in diesem Projekt auf die sichere, performante und fehlerresistente Übertragung der Daten an eine horizontal skalierbare Rails-Applikation, die in Tomcat-Applicationservern läuft und die Daten in einer Oracle Datenbank speichert. Über eine moderne Weboberfläche werden diese Daten dann auf vielfältige Weise sichtbar und verwendbar gemacht.

    Verwendete Technologien in diesem Projekt:

  • jQuery
  • JRuby
  • Rails
  • Sidekiq
  • Apache
  • Tomcat
  • Oracle
  • Redis
  • Linux
  • Spiegel Online Wahlwette zur Bundestagswahl 2013 (ehemals http://wahlwette.spiegel.de)


    Bei dieser Web-Applikation handelt es sich um ein Gewinnspiel zur Bundestagswahl 2013, bei dem der Teilnehmer eine Wette zum voraussichtlichen Ausgang der Wahl abgeben kann. Es kann jeweils eine Wette für die Erst- und Zweitstimme abgegeben werden. Außerdem wird auf Basis der abgegebenen Wetten eine Prognose für die Parteien und alle Wahlkreise berechnet und auf einer interaktiven Landkarte, welche die 299 Wahlkreise in Deutschland abbildet, dargestellt. Für jeden Wahlkreis gibt es ein Diskussionsforum, in dem die Teilnehmer über die Kandidaten diskutieren können. Die Anwendung wurde komplett individuell von uns entwickelt und auch von uns in der Amazon Cloud betrieben.

    Verwendete Technologien in diesem Projekt:

  • jQuery
  • Ruby
  • Rails
  • Sidekiq
  • Nginx
  • MariaDB
  • Redis
  • Linux
  • EC2
  • Konzeption, Design & Programmierung http://www.die-bucht-hamburg.de


    Wir konzeptionierten und entwickelten die neue Webseite der Bar "Die Bucht" in Hamburg auf Basis eines Content Management System, welches sich nahtlos und schlank in Ruby On Rails integriert.

    Ein besonderes Fokus lag auf dem "Responsive Design" der Seiten, welche sich an alle Bildschirmgrößen optimal anpassen und somit die Webseite auf dem Smartphone ebenso gut benutzbar macht wie auf einem Tablet oder Desktop. Auch auf eine gute Barrierefreiheit der Seiten wurde geachtet. Alle wichtigen Informationen für Besucher der Bar sind auf der Startseite schnell ersichtlich und die umfangreiche Getränkekarte ist per JavaScript Live-Filter flott durchsuchbar. Eine Besonderheit der Seite ist die Transformation der beiden unterschiedlichen Farbschemen für Tag und Nacht. Basierend auf den Geo-Koordinaten der Bucht wird der Sonnenaufgang und Sonnenuntergang berechnet und eine Transformation von einem Thema in das andere eingeleitet. Zum Ausprobieren einfach hier klicken.

    Verwendete Technologien in diesem Projekt:

  • jQuery
  • Ruby
  • Rails
  • Refinery CMS
  • Content Delivery System


    Wir programmierten in diesem Projekt eine auf jQuery Mobile basierte Web-Applikation, die den komfortablen Download von Cortona3D Dateien auf das iPad oder den Desktop-Rechner erlaubt.

    Der besondere Fokus lag dabei auf der Benutzbarkeit auf dem iPad und der schnellen und effizienten Dateinavigation. Ein integrierter Publishing-Workflow erlaubt es dem Administrator Dateien in unterschiedlichen Versionsausprägungen nach vorheriger QA für die Benutzer freizugeben. Die 3D-Dateien werden via WebDAV auf einen Fileserver hochgeladen und über einen Linux-Kernel-Event gesteuerten Daemon in der Datenbank und der Mobile-App verfügbar gemacht.

    Verwendete Technologien in diesem Projekt:

  • jQuery Mobile
  • Ruby
  • Rails
  • ElasticSearch
  • REST
  • MySQL
  • Redis
  • Linux
  • RESTful Application Programming Interface


    In diesem Projekt konzeptionierten und programmierten wir eine RESTful API für eine Social-Networking Plattform.

    Wir erstellten gemeinsam mit dem Kunden die Spezifikation der API, aus der schließlich die englische Anwender-Dokumentation hervorging. Parallel dazu entwickelten wir einen Prototypen der API als "Proof of Concept", in dem wir relevante Komponenten aus der bestehenden Applikation extrahierten und als standalone Rails-Applikation implementierten. Nach dem erfolgreichem Abschluß und Abnahme der Spezifikation und Dokumentation, wurde die API nahtlos und sehr schnell in die bestehende Plattform integriert. Als Besonderheit sei erwähnt, dass diese REST API nach dem Konzept des HATEOAS Hypermedia implementiert wurde. Das bedeutet, dass in allen Antwort-Dokumenten der API interne und auch externe Links zu allen verfügbaren Resourcen enthalten sind.

    Verwendete Technologien in diesem Projekt:

  • Ruby
  • Rails
  • REST
  • JSON HAL
  • HATEOAS
  • MySQL


  • Hochverfügbares MySQL Datenbank Setup


    Für unseren Kunden setzten wir ein lastverteiltes, mehrfach repliziertes MySQL Datenbank-System auf. Eine selbstentwickelte Applikation überwacht im Sekundentakt die Datenbanken und nimmt im Fehlerfall automatisch und für die Applikationsserver transparent einen Rollenwechsel aller verbleibend intakten Datenbanken vor.

    Verwendete Technologien in diesem Projekt:

  • Ruby
  • MySQL
  • HAProxy
  • Linux


  • Schiffskalkulation für Reedereien http://leona-shipping.com/


    Bei dieser web-basierten Internet- und Intranet-Software handelt es sich um ein komplettes, als SaaS (Software as a Service) und Appliance-Lösung (Server-Hardware) entwickeltes Produkt, dass an Reedereien und Banken lizensiert wird. Die Software dient Reedereien zur Planung und Kalkulation von Schiffs Kauf- oder Bau-Projekten und deckt als einzige Software dieser Art auf dem Markt alle kalkulatorischen Anforderungen ab.

    Als Grundlage für die Produktentwicklung wurde vom Kunden ein komplexer, auf Excel basierter Rechenkern zur Verfügung gestellt. Wir konzeptionierten und entwickelten diese virtualiserte, mandantenfähge Mehrbenutzer-Applikation von Grund auf. Asynchrone Worker-Prozesse erlauben eine schnelle parallele Berechnung der Schiffsmodelle. Das Web-Interface der Applikation wurde in JavaScript und jQuery entwickelt, ist modern und aufgeräumt und bietet durch dynamisch erstellte Charts, AJAX und "drag & drop" eine echte "Web 2.0" Benuztererfahrung.

    Verwendete Technologien in diesem Projekt:

  • Perl
  • Ruby
  • Rails
  • JavaScript
  • jQuery
  • Resque
  • Redis
  • MongoDB
  • Nginx
  • OpenVPN
  • VirtualBox
  • REST
  • Linux


  • Content Ingestion System


    In diesem etwa sechs Monate dauernden Projekt konzeptionierten und entwickelten wir ein komplettes Content-Ingestion-System für Audio-Content. Wir entwarfen eine horizontal skalierende System- und Softwarearchitektur inklusive der Kommunikationsschnittstellen zwischen allen Systemen basierend auf entkoppelten Workern und einem AMQP Messaging-System.

    Um eine Vorstellung davon zu bekommen, um was es sich bei diesem "Content-Ingestion-System" handelt und wofür es benötigt wird, stellen Sie sich bitte einen großen "Music Store" vor, der seinen Kunden Albums und einzelne Audio-Tracks vieler Independent- und aller Major-Label über Mobile und Web verkauft. Damit die Musik im Store verkauft werden kann, wird im Hintergrund ein komplexes System benötigt, welches den von den Labels hochgeladenen Audio-Content inklusive der Metadaten (z.B. im DDEX XML-Format) verarbeitet. Der Content muss validiert werden, über eine API einem web-basierten Back-Office zur Verfügung gestellt, in unterschiedliche Archiv- und Ziel-Audio-Formate und Clips transkodiert und schlussendlich auf ein großes Storage transferiert werden, aus dem die "Bits" ausgeliefert werden.

    Verwendete Technologien in diesem Projekt:

  • Ruby
  • Rails
  • Resque
  • ElasticSearch
  • RabbitMQ
  • Redis
  • Oracle
  • REST
  • Solaris
  • Linux
  • Unser Know-How

    • Ansible
    • API
    • AWS
    • Administration
    • Apache
    • Asterisk
    • Back-End
    • Bind
    • SAP BusinessObjects
    • Caching
    • Capistrano
    • Catalyst
    • Chef
    • Cloud
    • CMS
    • CouchDB
    • Daemons
    • Docker
    • EC2
    • ElasticSearch
    • Git
    • HAProxy
    • Hochlast
    • Hochverfügbarkeit
    • Internet
    • Intranet
    • jQuery
    • jQuery Mobile
    • JRuby
    • JSON
    • JavaScript
    • KnockoutJS
    • KVM
    • Lastverteilung
    • LDAP
    • Linux
    • MVC
    • Memcache
    • Mojolicious
    • MongoDB
    • MySQL
    • Nagios
    • Nginx
    • NodeJS
    • NoSQL
    • OS X
    • OpenSource
    • OpenVPN
    • Oracle
    • Perl
    • Postfix
    • PostgreSQL
    • Puppet
    • REST
    • Radius
    • RabbitMQ
    • Rails
    • Redis
    • Resque
    • Riak
    • Rspec
    • Ruby
    • SOA
    • SOAP
    • SQL
    • Scrum
    • Sinatra
    • Softwarearchitektur
    • Softwareentwicklung
    • Solaris
    • Sphinx
    • Squid
    • SVN
    • Thin
    • Unicorn
    • Unix
    • Varnish
    • VirtualBox
    • XML
    • Xen
    • YAML
    • ZFS