About
I am a web developer specialising in JavaScript and Typescript.
My career so far has had many twists and turns. I had the opportunity
to work as a professional musician for almost a decade and tour around
Europe. At the same time I had the chance to lead international
workshops and tutor, teaching anything from music over performance art
to English.
In web development I have found a new exciting career where I can
apply many of the skills I have learned in my previous career be that
creativity, problem solving, communicating effectively with people
from different backgrounds or working in a tight knit team under
pressure.
Being a developer gives me the continued opportunity to learn, be
creative and experiment with new projects in my freetime, some of
which you can find bellow.
I am currently working as a web developer in Basel, Switzerland while
I am continuing to further develop my programming skills.
When I am not working on web applications I like to cycle and travel.
Skills
Frontend
JavaScript/Typescript |
95%
|
HTML |
90%
|
CSS |
90%
|
Angular |
90%
|
React |
70%
|
Other Frontend Libraries and Frameworks
SvelteKit
Bootstrap
Sass
jQuery
Backend
Node/Express |
85%
|
Java |
75%
|
Spring Boot |
65%
|
SQL |
65%
|
Python |
30%
|
Backend Libraries and Frameworks
Docker
Jenkins
MongoDB
Firebase
Portfolio
React Endless Wiki Viewer
This is a rebuild of the Endless Wiki Viewer with React. Users can
still scroll through endless Wikipedia extracts and view them on
the page.
I rebuild the same app to focus on learning React, to simplify it
and to focus on the most important functions of the app and
improve those. Similarly to the first build I learned a lot about
how to handle iframes. What was new in this was the React part and
how to deal with the state in React. In addition I used React
Styled-Components to deal with encapsulating the styles inside the
components in JavaScript.
A future version of this could include the use of React Router or
Gatsby.js to add address bar navigation, forward/backwards history
support and bookmark possibilities to the app.
Technologies used: HTML, JavaScript, React, React Styled-Compoents, GitHub Pages, GitHub
Sharing Notes
This is a Node and Express web application that allows the
real-time sharing of notes through a shared permalink. Each note
has a unique permalink that can be shared at will. The note is
updated in real-time through websocket use. If notes are not
needed anymore they can be deleted by the user.
This was a project to learn to use real-time web technologies.
Initially I used socket.io on the backend and frontend but I later
rewrote the code to just use WS on the backend and use vanilla
JavaScript on the frontend. I used HashIDs and a counter in the
database to create unique short IDs as permalinks.
It would be interesting to try to make this scalable. The
websocket implementation would have to change and probably involve
a database of all the connected clients to make it work.
Technologies used: Node, Express, MongoDB, Mongoose, HashIDs, Websocket, WS, Socket.io, Handlebars, HTML, CSS, JavaScript, GitHub, Heroku
P1ng
This was the first JavaScript game I wrote. It is a Pong clone
developed using vanilla JavaScript and the canvas API. It is
responsive and can be played on phones and tablets.
This was mainly a project to learn about the basics of JavaScript
and the basic use of the canvas API. This was also my first
project to be put on GitHub another skill I learned through this
project.
Technologies used: HTML, CSS, JavaScript, GitHub