Chalarangelo Web developer

Angelos Chalaris

Angelos Chalaris Athens, Greece

Introduction

I'm Angelos Chalaris, 30 years old, a web developer from Athens, Greece. Programming is not just a career path for me, but also a hobby and a passion of mine. I have a BSc in Computer Science and a MSc in Advanced Information Systems I started coding sometime around 2011, which is when I started studying Computer Science in the University of Piraeus. After getting my BSc, I studied for a MSc in Advanced Information Systems with a concentration in Advanced Software Development Technologies. I've worked with various technologies in the past, but recently I've taken an interest in web development and web applications.

Skills: HTML, CSS/SCSS, JavaScript, Node.js, React, Web Components, Ruby on Rails, MySQL/MariaDB, Git, Figma

Work Experience

Senior Full Stack Engineer Skroutz S.A. Jan 2023 - Present

Senior software engineering role focused on JavaScript/ReactJS and Ruby/Ruby on Rails; everyday tasks included:

  • Collaboration with experienced engineers, designers and product managers to build new products
  • Rapid development of new features, products and systems to deliver value to end users
  • Maintenance, refactoring and improvement of existing code to maintain high user experience quality
  • Research, analysis and development of reusable full-stack software solutions
  • Implementation of coding best practices, knowledge sharing and mentoring
  • Workflow optimization in order to increase velocity and minimize friction in development
  • Usability testing, shipping experiments, metric evaluation to identify flaws and enhance feature performance

Full Stack Engineer Skroutz S.A. Jan 2022 - Dec 2022

Software engineering role focused on JavaScript/ReactJS and Ruby/Ruby on Rails. An example of my everyday work and how I contributed to the team can be found in this blog post.

Frontend Engineer Skroutz S.A. Sep 2019 - Dec 2021

Software engineering role focused on JavaScript and ReactJS.

IT Officer (Software Engineer) Greek Council for Refugees Mar 2018 - Aug 2019

Part of a team responsible for:

  • Software and Hardware Installation, Update and Maintenance
  • Windows Server, SQL Database (MySQL, MariaDB, SQL Server) Administration and Maintenance
  • Full-Stack Development of Web-based Applications (Node.js, Express, MariaDB, Hyperapp/React)
  • Content Management and Website Administration (Joomla)

Projects & Open Source

30 seconds of code 30 seconds of code JavaScript, React, Astro, Node.js, HTML Dec 2017 - Present

I am the founder and original creator of 30 seconds of code, a curated collection of over 1000 modern JavaScript, CSS and React snippets, that can be easily copied into any new or existing project. I maintain the platform for the project, as well as create and curate content for the website. The project has over 250 contributors and 100k stars on GitHub, while most of its systems utilize continuous integration tools to streamline the build and update process of the project. It's currently one of the most extensive learning resources for ES6 on GitHub. My core responsibilites as a mainter include, but are not limited to:

  • Development, Unit-testing and Maintenance of a JavaScript (ES6) Codebase (Astro, Web Components)
  • Maintenance of Automation Tools and Continuous Integration (Node.js, GitHub Actions)
  • Website Administration and Continuous Deployment (Netlify)
  • Design and Implementation of a modern design system (Figma, CSS, Sass/SCSS)
  • Content Creation, Curation and Community Management (GitHub, Code Reviews)

jsiqle jsiqle JavaScript, Node.js Oct 2021 - Mar 2022

I am the creator of jsiqle, a JavaScript library that allows users to create ActiveModel-like models and collections, as well as to perform queries on them. The library was developed as part of the infrastructure used to power the 30 seconds of code website, and was used in production for a while. It is currently in hiatus, but it is still maintained and updated occasionally.

furl furl React, Sass/SCSS Mar 2019 - Jul 2019

I developed furl, a library of components written entirely in a functional style, utilizing the hooks API provided by React. The library contains a variety of full-fledged reusable UI components with multiple variants, extensive documentation and examples.

Fixture Factory  Fixture Factory JavaScript, Node.js, TypeScript May 2021 - Jun 2021

I developed Fixture Factory, a FactoryBot-inspired library that allows users to create and generate fixtures for their projects. The library is written in TypeScript and is fully tested, while it is also fully documented and has a comprehensive set of examples.

mini.css mini.css CSS, Sass/SCSS, HTML Aug 2016 - Oct 2018

I am the creator of mini.css, a minimal, responsive and easily customizable alternative to popular CSS frameworks like Bootstrap and Semantic UI. It utilizes modern technologies, techniques and design patterns, such as the Flexbox module, CSS variables and material design, while it's written in SCSS without the need for any Javascript code. It runs on most modern browsers and is actively maintained and updated frequently. It was also the basis for my Master's Dissertation, which explored the application of UI/UX design principles in web interface design. The project is currently archived.

Node Static Page Generator Node Static Page Generator Node.js, JavaScript Nov 2017 - May 2018

I built the Node Static Page Generator as a simple tool for creating static websites. The tool supports static HTML generation from Markdown files and metadata injection via JSON files, while it allows users to fully customize it by tweaking its code. The project is not actively maintained anymore.

mocka mocka CSS, Sass/SCSS, HTML May 2017 - Jun 2017

I built the mocka placeholder to be a very simple, yet elegant content placeholder, used to enhance user experience when a page is loading. Crafted with customization in mind, it is written in SCSS, can be altered easily to accommodate any and all needs and runs on all browsers. The project is not actively maintained anymore.

Demos & Smaller Projects Demos & Smaller Projects JavaScript, Node.js, React, HTML, CSS, Sass/SCSS Jun 2016 - Present

I have built various demos and toy projects over the years. Here are some of the most interesting:

  • I've tinkered with progressive web apps for a long time, producing a handful of demos, such as Mock PWA, Autumn Blog and PWApp Demo.
  • I have dabbled in WebSockets a little bit, creating Cows.js, a simple chat platform powered by React.
  • I built Reactor back in the days before create-react-app was the de facto choice for kickstarting React projects. It's a simple set of Bash/Batch scripts for creating a React project without having to set up everything yourself.
  • I developed a small utility for React components, named combine-class-names, which tidies up messy class name values in JSX.
  • One of my earliest demos is Starclock-js, a beautiful astronomical clock built with JavaScript/jQuery, HTML and CSS.
  • While exploring HTML5, I put together HTML5 Template Generator, a replacement tool for commonly-found HTML5 boilerplates.
  • I've tried my hand at simple interpreters and parsers, producing Parse-MD.js for Markdown and brainsource.js for brainf**k, both written in JavaScript.
  • While my experience with Python is quite limited, I have created a few demos, such as Unscrape, a simple image scraper for Unsplash, and Multisort, a sort of joke sorting algorithm.

Education

BSc Computer Science University of Piraeus 2011 - 2016

I studied various core concepts of programming and computer science, such as algorithms, network architecture, programming languages and artificial intelligence, while my focus was Software Technologies & Intelligent Systems. During this time, I learnt to code in C++, Java, C#, HTML, CSS, JavaScript, PHP and Prolog, developing various projects and applications, oftentimes integrating SQL databases. My thesis was on Business Process Intelligence, Process Mining and the ProM Framework (available here in Greek).

MSc Advanced Information Systems University of Piraeus 2016 - 2018

I studied Advanced Software Development Technologies, familiarizing with some more advanced programming and architecture concepts, especially ones that are used in web-based technologies and modern desktop applications. During this time, I explored web and mobile development, as well as UI/UX design in more depth, while I became more fluent in JavaScript and PHP and had a chance to work with Firebase and cloud patforms such as Amazon Web Services (AWS) and DigitalOcean. My dissertation was titled Design, Development and Application of Advanced User Interface Software for Web Applications (available here in Greek).

Full-Stack Certification freeCodeCamp 2017 - 2019

I have completed freeCodeCamp's Full-Stack developer certification, earning all 6 of the required certifications and learning essential skills for developing websites and web applications, using HTML, CSS, JavaScript and popular tools, such as React, Bootstrap and Express. More specifically, I have earned the following certifications:

Advanced Ruby: Behind the Magic Go Rails 2024 - 2024

I have completed the Advanced Ruby: Behind the Magic course by Go Rails, covering advanced Ruby topics, such as blocks, procs & lambdas, requiring files & autoloaders, metaprogramming and domain-specific languages (DSLs). You can find my certificate here.

CSS for JavaScript Developers Josh W. Comeau 2023 - 2023

I have completed Josh W. Comeau's CSS for JavaScript Developers course, refreshing and further expanding my knowledge of CSS. The course covers various CSS topics, such as fundamentals, rendering logic, modern component architecture, flexbox, grid, responsive & behavioral CSS, typography, animations and much more. You can find my certificate here.

The Fundamentals of Digital Marketing Google Digital Workshop 2022 - 2022

I have completed Google's Fundamentals of Digital Marketing course, learning the basics of digital marketing. More specifically, I was introduced to concepts such as digital marketing strategy, search engine optimization, display advertising, social media marketing, email marketing, mobile marketing and analytics. You can find my certificate here.

Tech Talent School Certifications Found.ation 2017 - 2018

I have earned some of Tech Talent School's certifications, improving upon already acquired programming skills, as well as learning some soft skills which might be of use in my career. More specifically, I have earned the following certifications:

Udemy Courses Udemy 2017 - 2018

I have completed a lot of Udemy's courses, learning important skills and concepts for software and web development, as well as many other things related to computer science and programming. Some of the most relevant courses I have completed are as follows:

Codecademy Courses Codecademy 2016 - 2017

I have completed some of Codecademy's courses, learning necessary skills for software and web development, such as HTML, CSS, ReactJS, jQuery, Git, PHP and Ruby.

Community contributions

Stack Overflow Stack Overflow Sep 2012 - Present

I actively participate in the Q&A site Stack Overflow and I currently have over 6000 reputation points and a bronze tag badge in JavaScript. Most of my questions and answers are in the JavaScript, HTML, jQuery and CSS tags. Some of my top answers include:

Codewars Codewars Nov 2017 - Present

I actively participate in the coding challenge website Codewars and I currently have over 2500 honour points (3kyu). Most of my Kata solutions are written in JavaScript and Node.js.