I am a lifelong learner
Learning to code was on my bucket list since I dipped into the world of tech during my first job as a content editor. I enjoy working on intellectually challenging tasks and factoring new technologies into my daily work.
I like to work with people
It makes me happy to co-create and implement new concepts together with other people. Ten years of experience in the retail industry help me to take a user-centric perspective and act solution-oriented.
I have a Master's degree
My academic background helps me to independently search and critically evaluate information. It also brings me in a good position to think outside the box when facing technical challenges.
I like spending time outdoors with my family, italian food, opera evenings, and podcasts about Harry Potter.
Sorting Hat App
Responsive SPA built with React, React Router and Tailwind CSS. It gets data from a Serverless Sorting Service I built before. The project mimics the sorting ceremony that takes place for new students at Hogwarts. Users can click a button to initiate the sorting process and will be randomly assigned to one of the four Hogwarts houses. They are directed to their corresponding house view and meet their new housemates.
MyFlix Movie App
A web app that provides users with access to information about movies, directors, and genres. Users can sign up, update personal data, and create a list of favorites. Server-side and client-side were developed using the MERN stack.
I created a RESTful API using Node.js and Express, that interacts with a non-relational database (MongoDB). The API can be accessed via commonly used HTTP methods like GET or POST. To retrieve data from and store data in the database, CRUD methods are used. The API provides movie information in JSON format.
To test the API, I used Postman. I also included user authentication and authorization code in the form of basic HTTP authentication and JWT authentication.
After completing the API, I started to build the interface users would need when making requests to, and receiving responses from, the server-side. It is a single-page, responsive application, developed with React and React-Redux. It provides several interface views, including, but not limited to, a main view (shows a list of all movies), single movie view (shows data about a single movie and allows users to add the movie to their list of favorites), a login view, a registration view and a profile view (where users can update their user data and list of favorites).
This was both my favorite and most challenging project. I have enjoyed building the API and working with database structures. I also quickly became familiar with using the terminal. Developing the client-side, it took me a while to understand how React and Redux work and how to achieve the desired results. But with the help of my great tutor and after a pair-programming session with an experienced developer, I could conquer that mountain.
Native Chat App
A chat app for mobile devices built with React-Native. It provides users with a chat interface where they can send/receive text messages and images as well as share their location.
I used Expo.io to develop the app. It is optimized for both Android and iOS devices. The chat interface and functionallity I created using the Gifted Chat library.
To store the chat messages, I used the Google Firestore Database. Images are stored in Firebase Cloud Storage. To make the chat conversations available offline , I used asyncStorage to store them locally. When users are offline, they can’t create new messages (using Gifted Chat’s renderInputToolbar prop). I used Google Firebase authentication to authenticate users anonymously.
View project setup manual
During development, I ran into a few difficulties, often caused by outdated combinations of packages or dependencies. Amongst others, I had to research the correct version of NetInfo to get the app up and running and also had to install Base64 encoder/decoder to handle 'atob()' and 'botoa()' issues.
This chat app was the final project for my full-stack web development bootcamp. Besides all difficulties, I realized how I grew in handling problems and solving bugs independently. I improved in figuring out what search terms to use when trying to find an answer with Google. I got a solid grasp of when it might help to temporary set a console.log() to know what’s going on.
A serverless, progressive web app (PWA) built with React using a test-driven development technique (TDD). The app uses the Meetup API to fetch upcoming events for a selected city, and OAuth2 authentication flow. For the authorization server it uses AWS Lambda. Alerts for users are created by using an OOP approach. A service worker allows the app to work offline. The recharts library is used to visualize data with a scatter graph and a pie chart.
A basic single-page app to practice Angular framework and TypeScript. The application presents users with multiple choice questions on various topics. Once users have answered all the questions, their results will be displayed. It uses Angular Material for the UI layout and Angular Flex Layout Module to ensure responsibility.
Last but not least – an absolute classic hit: A basic todo-list app to practice the Vue.js framework. A user can add and delete todos, edit them and mark them as completed. Vue Material is incorporated for its visual design.