Hello, we are the native web. We develop high-quality enterprise web products based on open standards and open-source. Let us join your way to digital transformation, it's gonna be an epical journey!

Recent & Upcoming

Ich kenne was, was Du nicht kennst: Passport, Golo @ heise Developer, April 10th, 2015

Codequalität mit JavaScript, Golo @ developermedia, München, Germany, May 4th to 6th, 2015

Node.js, io.js & Co.: Entwickeln für die Cloud, Golo @ enterJS, Darmstadt, Germany, June 17th to 19th, 2015

Asynchrone Programmierung 101, Golo & Matthias @ enterJS, Darmstadt, Germany, June 17th to 19th, 2015

We have written more than 200 articles for IT magazines, and we have given more than 150 talks at conferences, including 11 keynotes. Do you want us to speak at yours?

Keynote @ CeBIT 2015

Follow us on Twitter

Meet our team

We are smart and get things done. And we hire. Where? Riegel am Kaiserstuhl, Stuttgart, Hamburg, or anywhere you like on earth and beyond.

Golo Roden

Founder and technical visionary of the native web. Loves JavaScript, Node.js, Lisp, apples and raspberries. Favors Unix and the shell. Spreads knowledge.

Susanna Roden

Founder, visionary and managing partner of the native web. Loves Photoshop, Systemtheorie, apples and coffee. Oh my god, it's full of stars.

Matthias Wagler

Frontend architect and UI minimalist. Loves animating things on a screen and tinkering with the latest web tech. Addicted to coffee and music.

Stefan Brandys

Managing partner of the native web and Intuity. Loves the internet of things and 'bull's-eye grilled onion & garlic showdown'. Think big and start small.

Markus Turber

Designer and entrepreneur by heart. Loves shaping design strategies for future products. Managing partner and founder of Intuity.

Our culture

Evolution. Elegance. Communication. Trust. That's us.

We welcome tomorrow

In technology, the only constant is change. For us, that's nothing to worry about. To the contrary, we look forward to tomorrow, and openly welcome all the interesting and exciting things the new day will bring.

Curiosity is essential

We believe that having the chance to learn and to evolve every day is a valuable privilege that we are very thankful for. Having a deep desire for knowledge, we take hard problems as welcome challenges, not vice versa.

We strive for courage

To be open means to regularly question and throw away yesterday's work, and to acknowledge your faults. In our team, we help each other to have the courage that is required for that.

Love for details

Since we want to deliver elegant yet simple solutions of high quality for complex problems, we care about details with love: things are done when they are done, and we give them the time they need to mature.

Well-thought answers

Getting things conceptually right means finding answers at a lower level. That's why we question things over and over again. This way we want to get to well-thought answers that are composable and sustainable.

Pair for everything

Discovering and developing things works better if you're not alone. Hence we pair for everything and always talk about what we think. We are deeply convinced that one and one makes more than just two.

Highly distributed

Since everybody is deeply rooted somewhere, we want you to live wherever you want. Although we have various offices, any place with a cozy desk, a cellular network and web access is fine. On earth and beyond.

Open standards

We believe that listening to each other helps to build sympathy and trust. This very same principle we apply to technology. Hence we favor following open standards over proprietary vendor-specific engineering.

Spreading knowledge

Last but not least, spreading knowledge is a core value for us. As we've said we look optimistic into the future and love to learn. If you do, too, and if you share our culture, we'd love to welcome you.

What we can do for you

Do you like us so far? Do you value our culture? Do you share our love for open source? Do you think we might empower you, too? Just ask :-)

Architecture

Regardless of whether you are creating an enterprise web product or the next cloud application, you need a modern and sustainable architecture.

We help you set up your architectural strategy and define specific tactical steps that are individually tailored to your team's skills.

For us, the 3-tier architecture is not the end of the story. In fact, it's just the beginning. And there is way more to be told: Micro services, SOA, CQRS, SEDA & co.

Development

Having awesome technology at hand is one thing, being able to master it is another. For us, this means becoming a committed full-stack JavaScript engineer who is able to think outside the box, too.

Hence, we teach JavaScript and Node.js, and also related technologies such as Git and Docker, to name a few.

We guide you from scratch to deep-dive, and also assist with specific problems. Since we have 10+ years of .NET experience, too, we are also specialists for migration.

Quality

Quality is a key factor for software to fulfill its functional and non-functional requirements. Hence we help you to drive your code to perfection.

We perform code reviews and act as your co-pilot in pair programming. We teach testing and TDD, and assist you in creating and implementing coding styleguides.

If the challenge is adopting a mindset for quality, our interdisciplinary team is happy to help you with proven guerilla tactics.

Evaluation

Honesty is the best policy. That's why we listen closely and carefully. We want to know who you are and what your challenges are made of.

We don't tell you what works for us, but what will work for you. We do this even if it's the uncomfortable truth that nobody likes to hear.

For us, feedback and criticism have to be constructive. This is our foundation to build trustful and therefore enduring relationships.

Modelling

Software is not an end in itself. Instead, it gets written to solve an actual problem at hand. Unfortunately, there's a linguistic gap between business and development.

In other words, the languages in the problem and in the solution space are mutually exclusive. With us, things are entirely different.

Your business, your code, one language. This is our first directive. We enable you to model your business and code it in no time.

Process

We don't suggest methodology X. Instead, we suggest to grasp what being agile means at its core and then to use whatever is right for the job.

Anyway, we are strongly opinionated how development should take place, and we are proud of our culture that is based on four core values.

Evolution. Elegance. Communication. Trust. That's us. And if you want to, we can help to make that yours, too. Just ask.

We love open source

We believe in openness and giving back to the community. Hence we have open-sourced a bunch of our Node.js modules on GitHub, maybe they will make your life easier. And don't be shy: issues and pull requests are highly welcome.

We value quality

For us, quality and love for details are core values. Hence we deeply care about our code and the surrounding build process.

The heart of our build process is tourism, a convenience wrapper around Grunt, that allows us to easily configure code analysis, unit tests and anything else we need for development.

For testing we primarily rely on Mocha with a number of custom extensions: assertthat provides a syntax for fluent assertions, isolated encapsulates file-system based tests, and nodeenv controls environment variables.

Privacy is important

Web applications are accessible by anyone, anywhere and anytime. That's why security is absolutely essential to us.

crypto2 is our base module that provides everything we need with respect to encryption, hashes and message digests. It enhances Node.js's integrated crypto module.

To identify users, we favor claims-based authentication over traditional approaches. Hence we have written limes, a middleware for Express and Socket.io.

Additionally, we use shaker to hash and verify passwords in a cryptographically secure way.

The web is real-time

Since the dawn of single-page applications, the web has ultimately become real-time.

We believe that, from time to time, using a technology that has worked for decades is better than catching the next hype. Hence instead of using web sockets we rely on pure HTTP.

json-lines is a module for Express to push data to a client, be it Node.js or a browser. As its name suggests we use the JSON Lines format.

json-lines-client is a client for json-lines that works with Node.js and the browser.

Use a reliable core

Any application, from CLI to cloud, needs to get a few basic things done. We have written a few modules that help with these tasks.

We believe that even CLI applications can be beautiful, hence we have created buntstift. In addition, to make them more fault-tolerant, we use findsuggestions.

For cloud applications, we have written flaschenpost, an opinionated logger that respects the Twelve-Factor App principles. Finally, there's processenv that parses environment variables.

Act gracefully

Handling errors is a critical part for any application. Hence we have created a few modules to detect and work with errors.

First, since having custom error types is quite useful, we have created defekt. It reduces creation of custom error types to calling out their name.

To sensibly use custom error types you have to detect error cases. This means validating user data with formats as well as verifying function calls with ensurethat.

One more thing

In addition to all the aforementioned modules, there are a few more that we have created.

To remote control Docker there are crew and tutum. To connect to RabbitMQ there's hase. To store blobs there's datendepot. For P2P networking there's chord2.

We could also talk about draht, an application event bus, or our evented timer called timer2, or… - but then we would never get to an end.

So, to learn more, visit us on GitHub. And don't be shy: issues and pull requests are highly welcome.

Contact

Feel free to contact us for whatever reason. We look forward to you. And don't forget, we hire… ;-)

the native web UG (haftungsbeschränkt)

Hauptstraße 8
79359 Riegel am Kaiserstuhl
Germany

Managing partners are Susanna Roden and Stefan Brandys

Phone +49 177 3373175

Mail hello@thenativeweb.io
Twitter @thenativeweb
GitHub thenativeweb

IBAN DE78 6001 0070 0946 4157 06
BIC PBNKDEFF

Registry court is Freiburg im Breisgau, Germany
Commercial register HRB 709303
German VAT no. DE 287 040 877

Registered office is Riegel am Kaiserstuhl, Germany

Responsible for content in accordance with § 55 section 2 RStV is the native web UG (haftungsbeschränkt), address as above