StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Product

  • Stacks
  • Tools
  • Companies
  • Feed

Company

  • About
  • Blog
  • Contact

Legal

  • Privacy Policy
  • Terms of Service

© 2025 StackShare. All rights reserved.

API StatusChangelog
  1. Home
  2. Companies
  3. Flexperto GmbH
Flexperto GmbH logo

Flexperto GmbH

Verified

The Communication Cloud for more efficient sales

Berlin, Germanyflexperto.com
48
Tools
3
Decisions
1
Followers

Tech Stack

Application & Data

10 tools

PHP logo
PHP
Node.js logo
Node.js
React Native logo
React Native
Yii logo
Yii
JavaScript logo
JavaScript
TypeScript logo
TypeScript
Erlang logo
Erlang
Google BigQuery logo
Google BigQuery
MySQL logo
MySQL
MongoDB logo
MongoDB

Utilities

2 tools

Slack logo
Slack
OpenTok logo
OpenTok

DevOps

1 tool

Snyk logo
Snyk

Team Members

Micha Kühn
Micha KühnEngineer
Caspar Bauer
Caspar BauerCTO
Timm Stelzer
Timm StelzerVP Of Engineering

Engineering Blog

Stack Decisions

Timm Stelzer
Timm Stelzer

Nov 10, 2020

We have a lot of experience in JavaScript, writing our services in NodeJS allows developers to transition to the back end without any friction, without having to learn a new language. There is also the option to write services in TypeScript, which adds an expressive type layer. The semi-shared ecosystem between front and back end is nice as well, though specifically NodeJS libraries sometimes suffer in quality, compared to other major languages.

As for why we didn't pick the other languages, most of it comes down to "personal preference" and historically grown code bases, but let's do some post-hoc deduction:

Go is a practical choice, reasonably easy to learn, but until we find performance issues with our NodeJS stack, there is simply no reason to switch. The benefits of using NodeJS so far outweigh those of picking Go. This might change in the future.

PHP is a language we're still using in big parts of our system, and are still sometimes writing new code in. Modern PHP has fixed some of its issues, and probably has the fastest development cycle time, but it suffers around modelling complex asynchronous tasks, and (on a personal note) lack of support for writing in a functional style.

We don't use Python, Elixir or Ruby, mostly because of personal preference and for historic reasons.

Rust, though I personally love and use it in my projects, would require us to specifically hire for that, as the learning curve is quite steep. Its web ecosystem is OK by now (see https://www.arewewebyet.org/), but in my opinion, it is still no where near that of the other web languages. In other words, we are not willing to pay the price for playing this innovation card.

Haskell, as with Rust, I personally adore, but is simply too esoteric for us. There are problem domains where it shines, ours is not one of them.

682k views682k
Comments
Timm Stelzer
Timm Stelzer

May 7, 2020

We're still using JavaScript and Node.js, but try to stick with TypeScript for new services and modules. About the benefits of static typing much has been written, in short it:

  • offers better maintainability and discoverability of existing code bases
  • provides reasonable type safety, which frees us from writing a huge chunk of unit tests and mitigates a large set of problems that are caught in compilation
  • affords a new level of expressiveness via types

Nothing is without trade offs; we are aware of, and accept that:

  • fighting the compiler can be frustrating
  • it adds to the already large list of skills a web developer has to learn
  • it adds another piece to the already large set of tools necessary to get code from development to production
32.4k views32.4k
Comments
Micha Kühn
Micha Kühn

May 7, 2020

We run our services on bare-metal servers instead of using IaaS providers like AWS. The reason to choose Docker Swarm over a tool as complex as Kubernetes for us was to keep the cost of operating such a tool low.

2.81k views2.81k
Comments