Angelique Schouten

Junior Developer with DevOps Skills.

"Take responsibility with the whole team from beginning to end."


Hi, I am Angelique, 39 and living in Rotterdam, The Netherlands. After working at various companies, positions and as an entrepreneur I have found the kind of work that fits me best; software development. Not only is my technical and creative background (MSc - TU Delft) and my user focused mindset useful for this type of work. I can also unleash my eagerness for solving analytical puzzles and for delivering clean and organized code.

In 2019 I've enthusiastically learned as much as I could about software development myself. This resulted in the GoalPlanner web app. My app and motivation got me into the DevOps bootcamp of YoungCapital NEXT (by Testconsultancy Groep at ITPH academy) in January 2020. Within the time span of 2 months I've;

  • passed 5 important exams
  • learned about many important tools for DevOps
  • worked in a scrum team on a project for 4 sprints of a week

Now I am continuing my learning process at Edition1 as a Junior Software Developer.

I like to spend my free time bouldering or climbing. During vacations I like to be in the mountains, enjoying the views and making long and adventurous hikes.

foto Angelique

Problem - How can you learn a computer to ask the right questions? The goal is to let it guess the animal you have in mind with only yes and no as options to answer and only one guess.

Action - I've created this function with the use of a dict in Python. The computer always starts with the same question. Each question and answer combination has a designated next question (dict in dict). The result is a 'question-tree'. At the end there is not a next question, but an animal name, which will be the guess from the computer. If this is wrong, the new animal and a smart question (dict) can be added.

Result - The Python code for this game (in Dutch).

Next step - Create a user interface for this game, implement a tool to store the new questions and deploy the game.

Link to Python code on GitHub

animals


Problem - A hair salon was in need of a web app for it's manager, employees and customers. They need to be able to make an account, make reservations, schedule employees, choose and buy products and services from a stock database, keep track of sales volumes, assign authority, send emails and much more.

Action - Developed a web app with Flask, starting with a given proof of concept. We did peer reviews, set up a test environment on a Raspberry Pi and made automated tests. At the end of each sprint we did a sprint review with the product owner and stakeholders. The functionalities I worked on were mainly the editing of accounts, the shopping basket, employee scheduling and filtering.

code snippet for reservations
Code snippet for getting a list of employees who are available.

Result - A deployed web app for the hair salon with many functionalities, a happy client, experience in working in a scrum team and growth as a software developer.

Unfortunately the code on GitLab is only accessible by the scrum team and stakeholders.

printscreen homepage HairforceOne

Update January 2021: Code Refactoring - The code snippet above shows a nested for loop that will provide the available employees when making a reservation. However, especially when the database grows, this nested for loop is very inefficient. The Big-O complexity of this algorithm is O(n3). Therefore I improved this code. Or better said: when looking at this code again I realized this nested for loop can be skipped completely, by improving the database queries.

Prior to the nested for loop 3 queries where made: 1 to get all employees (which is not efficient and not necessary), 1 to get the employees that are scheduled for work and 1 to get the employees that are booked. Here you see my improved nested query that uses 2 sub queries.

(Note: For this project Flask and SQLAlchemy was used.)

refactored code for reservations
Previous code snippet refactored by improving the prior queries which make the nested for loop redundant.


Problem - The only experience I had with building a Python web app was the bit that I gained during the Udemy and CS50 course. It's a good start, but also only the basics. I wanted to practice a lot more and also execute the deployment of a Python web app for the first time.

Action - Developed a web app with Django. This app is of my own devising. I've payed extra attention to usability (decrease clicks and page refreshes) and security. For deployment I started using Git through GitHub and Heroku.

Result - A deployed web app which you can use to set and track goals. I took up quite some tough, but nice challenges. For example the use of inline formsets, AJAX and CSP headers to improve usability and security.

Next step - Add a calendar function!

Link to code on GitHub

Link to the GoalPlanner web app

printscreen goal
printscreen subgoals

Problem - In 2016 the startup company Lampshapers had developed a brand new design collection, ready to market. However, only close friends and family knew about it. From that moment on Lampshapers was in urgent need for publicity and customers.

Action - I've built a web shop in WordPress that presents the designers, tells the story behind the designs and shows the design collection in a professional and appealing way. For the products in the web shop I integrated a special plugin for extensive product options since the designs have so many features that can be adapted to the customer's taste.

Result - A web shop for gaining global publicity and orders; both in Dutch and English. Since the end of 2016 it has gradually improved it's Google search rankings. This was achieved by the use of important key words, pay attention to responsiveness and making the website quicker with the use of light weight plugins and caching. This resulted in the gradual increase of visitors and sales volume.

Personal experience - I've spend many nightly hours, eagerly searching for working solutions. Looking back at these moments, I realized I wanted to become a developer.

Link to Lampshapers' Web Shop




OS:   Windows - Linux

Back-end languages and DBMS:   C - Python - SQL

Front-end languages and libraries:   HTML - CSS - Bootstrap - Sass - JavaScript - jQuery - AJAX

Various:   Scratch - WordPress

IDE's:   Atom - PyCharm - Visual Studio Code - Spyder

Web frameworks:   Django - Flask

Cloud platforms:   Heroku - Amazon Web Services

IoT:   Scroll Bot Kit with Raspberry Pi Zero W - ESP32 M5 StickC - UIFlow

Version control:   Git - GitHub - GitLab

Agile tool:   Jira

Test types:   Peer Review - Unit Testing - Automated Testing

Automated testing tool:   Gherkin - Behave - PyHamcrest - Selenium - Splinter

Automated deployment tool:   Ansible - YAML

Best practices:   Scrum - Requirements Engineering - Software Testing - DevOps



In need for more theoretical knowledge, I collected a series of interesting books to read and work through.

Read:
The Phoenix Project
A Novel about IT, DevOps, and Helping Your Business Win
Gene Kim, Kevin Behr and George Spafford

Currently reading and working through:
Python for Everybody
Exploring Data Using Python 3
Charles Severance

The Pragmatic Programmer
Your Journey to Mastery
David Thomas and Andrew Hunt

Beginning the Linux Command Line
Sander van Vugt

Mastering Linux Shell Scripting
A Practical Guide to Linux Command-line, Bash Scripting, and Shell Programming
Andrew Mallett and Mokhtar Ebrahim

On my to-read-list:
Head First Design Patterns
A Brain-Friendly Guide
Eric Freeman and Elisabeth Robson

Two Scoops of Django 3.x
Best Practices for the Django Web Framework
Daniel Feldroy and Audrey Feldroy

Head First JavaScript and/ or Eloquent JavaScript

Learning Object-Oriented Programming
C. Hillar Gastn



  • Generic placeholder image
    Automated Application Testing
    Learned to work with Gherkin, Behave, PyHamcrest, Selenium and Splinter.
    February 2020
  • Generic placeholder image
    DevOps Fundamentals
    Based on The DevOps Handbook by Gene Kim, Jez Humble, Patrick Debois and John Willis.
    February 2020
  • Generic placeholder image
    IREB Certified Professional for Requirements Engineering Foundation Level
    February 2020
  • Generic placeholder image
    ISTQB Certified Tester Foundation Level
    January 2020
  • Generic placeholder image
    Professional Scrum Master (PSM1)
    January 2020
  • Generic placeholder image
    CS50's Introduction to Computer Science
    January 2020
  • Generic placeholder image
    Django and Python Full Stack Web Developer Bootcamp
    October 2019
  • Generic placeholder image
    Introduction to Computer Science and Programming Using Python
    July 2019

Short CV in pdf format. They open in a new tab.

CV in English

CV in Dutch




Feel free to say hi!
Love to hear from you.

       


  Angelique Schouten

  Rotterdam, The Netherlands

  contact@angeliqueschouten.com

  +31 (0)6 421 06 334



Angelique's Portfolio - Built: March 2020 - Last updated: February 2021