• Christian Thöni
    Ein paar Worte über mich
    Christian Thöni

    Mein Name ist Christian Thöni, ich bin 29 Jahre alt und wohne in der Länggasse in Bern.

    Seit vielen Jahren arbeite ich in der professionellen Webentwicklung. Von einem Startup bis hin zu Hilfsorganisationen kenne ich viele Umfelder und habe durch diverse Themengebiete breite Erfahrungen sammeln können.

    Ich arbeite momentan für das Schweizerische Rote Kreuz in einer Festanstellung zu 80% Prozent und supporte nebenbei bestehende Projekte sowie das Hosting.

    Als Full Stack Web Developer mit einer Spezialisierung auf Frontend fühle ich mich im Javascript bzw. Typescript puddelwohl. Ob nun Angular oder React, mir sind einige Frameworks bekannt.

    Im Backend verwende ich am liebsten Node.js, durch meinen Background als Systemtechniker habe ich zudem vertiefte Kentnisse hinsichtlich Netzwerk und Services.

    Kontakt aufnehmen

  • Frontend &
    Frameworks
    Angular bis Web Apps

    Angular

    Die schlanke und zielführende Architektur eignet sich für alle Arten Single-Page-Apps - mit Angular Universal wird auch Server-Side-Rendering unterstützt.
    88%
    Selbsteinschätzung

    Bootstrap

    Zum Rapid Prototyping und für generische Projekte nehme ich gerne das am weitesten verbreitete Frontend-Boilerplate Bootstrap von Twitter.
    70%
    Selbsteinschätzung

    CSS 3

    Was wäre Frontend ohne CSS3: Das Kernstück zum Styling jeder Webanwendung - mit neuen Features wie Animationen und Pseudo-Selektoren
    90%
    Selbsteinschätzung

    Contao

    Früher bekannt als TYPO3 Light hat sich Contao als sehr stabiles, schlankes und dynamisches CMS für Seiten aller Grössen gemausert
    67%
    Selbsteinschätzung

    Contentful

    Das SaaS Headless CMS Contentful kann mit Content Models komplett der eigenen Datenstruktur angepasst werden
    95%
    Selbsteinschätzung

    Drupal

    Drupal eignet sich für grosse Webseiten und Plattformen und kann mit den Ansichten und Inhaltstypen sehr flexibel eingesetzt werden
    79%
    Selbsteinschätzung

    HTML5

    Ich fokussiere mich bei HTML5 auf einen hoch schemantischen und strukturierten Aufbau unter Verwendung möglichst vieler nativen HTML-Features
    97%
    Selbsteinschätzung

    Javascript

    Die Programmiersprache, die am meisten meiner Aufmerksamkeit auf sich: Danke der kontinuierlichen Weiterentwicklung und breiten Unterstzüng die Sprache der Zukunft
    91%
    Selbsteinschätzung

    Joomla

    Zwar entwickle ich keine neuen Webseiten mehr mit Joomla, die bestehenden Pages verrichten ihre Dienste aber nach wie vor hervorragend
    82%
    Selbsteinschätzung

    LESS

    Dank diesem CSS Preprozessor kann ich noch mächtigeres CSS schreiben - vor allem die MixIns, Funktionen und Verschachtelung sind mir wichtig
    68%
    Selbsteinschätzung

    Next.js

    Dank der integrierten Unterstützung für sowohl SSR als auch CSR ist Next.js die perfekte Grundlage für jedes React-Projekt
    64%
    Selbsteinschätzung

    Nextcloud

    Zwar kein klassisches CMS, dennoch ist Nextcloud meine favorisierte Lösung WebDAV, CalDAV und CardDAV Lösungen.
    35%
    Selbsteinschätzung

    OpenCart

    OpenCart ist eines der verbreitensten komplett open source eCommerce-Systeme und verfügt über eine sehr stabile Basis
    35%
    Selbsteinschätzung

    POSTCSS

    Bereits jetzt für die Zukunft gewappnet: Dank dem Plugin PostCSS lässt sich bereits jetzt zukunftssicher und standardisiert entwickeln.
    58%
    Selbsteinschätzung

    PrestaShop

    Bei reinen eCommerce-Webseiten kommt man um ein adäquates System nicht herum - PrestaShop bringt alles für einen Online-Shop mit sich
    63%
    Selbsteinschätzung

    Progressive Web Apps

    Dank den neuen Browsertechnologien lassen sich Web-Apps mit einer nahezu nativen (auf dem Gerät installierten) Benutzererfahrung
    45%
    Selbsteinschätzung

    React

    Die mit React erstellen wiederverwendbare und unabhängigen Komponenten lassen sich jede Website einbinden - am Liebsten mit Hooks (16.8+)
    72%
    Selbsteinschätzung

    RxJS

    Die Reactive Extensions For Javascript (RxJS) ermöglicht reaktives programmieren und ändert mit seinen Observables die Art, wie ich JS/TS entwickle, grundlegend.
    28%
    Selbsteinschätzung

    Storybook (Living Styleguide)

    Jedes Designsysten benötigt eine gute Übersicht, hier kommt ein Living Styleguide ins Spiel: Mit Storybook kann mit wenig Aufwand einen Katalog von Komponenten erstellen.
    45%
    Selbsteinschätzung

    Templating

    Ich liebe es, Ausgabe-Templates von der Logik getrennt zu haben. Ob mit Twig, Smarty oder Freemarker, ich kenne einige Templating Systeme.
    60%
    Selbsteinschätzung

    Typescript

    Überall wo möglich verwende ich Typescript, ein Erweiterung die auf Javascript basiert und ein starkes Typing und weiteren Verbesserungen mit sich bringt.
    75%
    Selbsteinschätzung

    Wordpress

    Seit die REST-API deutlich weiterentwickelt wurde, kann Wordpress auch als Headless CMS eingesetzt werden und liegt wieder deutlich im Kurs
    86%
    Selbsteinschätzung

    d3.js

    d3.js steht für Data Driven Document - Damit lässt sich hervorragend ein Datenset zu SVG renden und komfortabel in Echzeit mit vielen Werkzeugen visuell ansprechend darstellen.
    45%
    Selbsteinschätzung

    jQuery

    Vor 10 Jahren in fast jedem meiner Websites zu finden, heutzutage eher obsolet dank neueren JS-Standards und nur noch als Fallback in älteren Projekten
    90%
    Selbsteinschätzung
  • Backend &
    Systemengineering
    Bundling bis Websocket

    Bundling & Transpiling

    Um neuste Features mit höchster Performance zu kombinieren, verwende ich diverse Bundling- , Automatisierung- und Transpiling-Werkzeuge
    38%
    Selbsteinschätzung

    Chrome Devtools

    Mein Lieblingstool um Frontend und Javascript zu debuggen: Vom DOM-Inspektor zu Eventlistener über Netzwerkverkehr bis hin zu Profiling und Auditing beherrschen die Chrome Devtools alles

    Continous Deployment

    Dank Tools wie Jenkins und anderen SaaS-Anbietern lassen sich Deployment-Pipelines kreieren, welche automatisiert Builds und andere Tasks erledigen können - für schneller arbeiten und stabilere Produkte.

    Conventions & Linting

    Ich nutze CSS Metholodigen wie BEM, Enduring CSS und Object-oriented CSS für eine hohe Leserlichkeit und Qualität. Hinsichtlich Linting ist Prettier bei mir die erste Wahl.

    Git Source Code Management

    Ich verwalte standardmässig jeden source code, den ich irgendwie entwickle, in einem Git repository in Kombination mit GitFlow und Semantic Versioning

    Linux (Debian)

    Privat sowie Beruflich wähle ich wann immer möglich Linux als Betriebssystem. Auf meinen Arbeitsgeräten ist Debian als Standard installiert, für Server verwende ich gerne Ubuntu Server

    Microservices & REST-APIs

    Bevorzugt entwickle ich Microservices welche dem REST-Paradigma folgen, auf HTTPS basieren und falls applizierbar nach CRUD-Modell
    32%
    Selbsteinschätzung

    Node.JS

    Ich liebe es, die Vorteile von Javascript auch für Backendservices zu nutzen. Als ORM-Framework mag ich Sequelize
    81%
    Selbsteinschätzung

    Orchestration

    Während meiner Anstellung bei enersis konnte ich wertvolle Erfahrungen im Umgang mit Rancher, Kubernetes und Docker-Container sammeln
    25%
    Selbsteinschätzung

    PHP

    Früher tagtäglich im Einsatz, heute eher als Fallback in Verwendung. Ich entwickle bevorzugt objekt orientiert und nach MVC-Pattern
    84%
    Selbsteinschätzung

    Package Management

    Libraries und Komponenten sowie deren Abhängigkeiten lassen sich hervorragend als Package via Verdaccion oder in einem monorepo bereitstellen.
    90%
    Selbsteinschätzung

    Ruby On Rails

    Durch die Weiterentwicklung einer Website mit Ruby on Rails, Middleman, eRuby etc. konnte ich Einblicke in die Ruby Umgebung erlangen
    22%
    Selbsteinschätzung

    Structured Query Language

    Der Standard um auf relationalen Datenbanken zuzugreifen. Meistens verwende ich MariaDB (ehem. MySQL) oder PostgreSQL
    67%
    Selbsteinschätzung

    UNIX Operating Systems

    Nebst Linux habe ich schon diverse andere Unix-basierte Betriebssystem verwendet, das berühmteste davon ist sicherlich MacOS von Apple aber auch weniger bekannte wie FreeBSD und openBSD

    Unit- & e2e-Testing

    Mit in der Entwicklungspipeline integrierten Tests lassen sich Fehler und Abweichungen automatisch erkennen
    41%
    Selbsteinschätzung

    Visual Studio Code

    Meine bevorzugte Entwicklungsumgebung: Mit den integrieren Autocomplete- und Git-Funktionalität sowie Extensions ist er enorm mächtig und trotzdem sehr performant

    WebSocket

    Nicht so viel Erfahrung, dafür umso mehr Interesse habe ich in WebSockets, ein Protokoll für Echtzeitkommunikation
    14%
    Selbsteinschätzung

    Webserver

    Früher habe ich fast immer Apache als Webserver verwendet, mittlerweile bevorzuge ich nginx. IIS ist mir zwar noch bekannt, jedoch schon lange nicht mehr im Einsatz

    Windows 10

    Früher mein Hauptbetriebssystem, mittlerweile noch in einer Dual-Boot-Umgebung präsent, um prorietäre Software wie Adobe Programme auszuführen
    85%
    Selbsteinschätzung

    Windows Server

    In meiner Ausbildung zum Informatiker Systemtechnik habe ich Windows-Server bis 2012 R2 mit Active Directory, DHCP, DNS, E-Mail, Netzlaufwerke, Printserver, RAID, Shadow Copies und mehr...
    50%
    Selbsteinschätzung
  • Design &
    Paradigmen
    Adaptive Design bis Photoshop

    Adobe Illustrator

    Fast alle vektorbasierten Angelegenheiten wie Logos und Schriftbilder erledige ich mit Adobe Illustrator
    57%
    Selbsteinschätzung

    Adobe Indesign

    Bei Printmedien wie Flyer, Schreiben, Magazine oder Bücher greife ich zu Adobe Indesign
    42%
    Selbsteinschätzung

    Adobe Lightroom

    Alle meine Fotografien durchlaufen ein Postprocessing-Verfahren, die hervorragenden Tools von Adobe Lightroomn sind ein Teil davon
    89%
    Selbsteinschätzung

    Adobe Photoshop

    Sobald es um die Manipulation von Pixel geht, ist Photoshop meine erste Wahl und für mich das mächtigste Allroundtool für digitales Designn
    85%
    Selbsteinschätzung

    Hohe Semantik

    Um den Inhalt den Suchmaschinen in bester Form zu übergebe, lege ich von Beginn bis zum Schluss Wert auf eine hohe Semantik

    Material Design

    Die Design-Guidelines von Google inspirieren mich bei meinen Projekten häufig, für Webapps verwende ich gerne Material Design für Angular.
    45%
    Selbsteinschätzung

    Mobile first

    Um dem zunehmenden Marktanteil gerecht zu werden, entwickle ich wo immer anwendbar mit dem Mobile-First-Approach um einen möglichst kleinen Fussabdruck und somit höchste Geschwindigkeit zu erzielen

    Performance

    Mit verschiedenen Techniken optimiere ich die Performance der Webseiten, um eine möglichst kleine Grösse und somit Ladezeit zu erzielen
    38%
    Selbsteinschätzung

    Printdesign

    Über die Jahre habe ich von Flyern, Plakaten, Etiketten über Büchern und Magazine einiges an Printmedien gestaltet.

    Auch einige Corporate Designs sowie Logos aus meiner Feder sind im täglichen Einsatz.

    Responsive & Fluid Design

    Bei einem adäquaten User Experience Design kommt man um Responsive- oder Fluid-Design kaum herum, damit sich die Website alle Endgeräte perfekt adaptiert
    98%
    Selbsteinschätzung

    Typografie

    Bei jedem visuellen Produkt ist ein adäquates Schriftbild essenziell und daher gilt einer meiner Leidenschaften gilt der Typografie: Mit oder ohne Serifen, ich liebe es mit oder an Schriftarten herumzuspielen

    Vektor & SVG

    Wann immer möglich, setze ich auf verlustfrei skalierbare Vektorgrafiken als SVG oder dynamisch generiert mit d3.js - für haarscharfe Darstellung in jeder Auflösung

    Wiederverwendbar

    Egal ob visual Design oder Coding, ich lege viel wert auf Wiederverwendbarkeit - sei es von der Designsprache über Bildelemente bis über das Wiederverwenden von Code versuche ich alle Bereiche abzudecken.

Thöni Digital Design

Internet Explorer wird nicht unterstützt

Leider unterstützt meine Website den Internet Explorer nicht mehr. Der Internet Explorer ist schon sehr alt und unsicher, verwende deshalb einen moderneren Browser wie Google Chrome, Mozilla Firefox oder Opera um auf thoeni.design zuzugreifen.