Top front end website development tools and frameworks
GiordanoArman-Technicaldescription (1)
1. Giordano Arman - Technical description
This is an alphabetically sorted list of descriptions of my experience with the following
technologies: JavaScript, Node.js, React, jQuery, MongoDB, Java, Android SDK, Redux, Git,
HTML, CSS, Sass, Less, Amazon Web Services, React Native, Meteor, Apache Cordova,
Phonegap, CoffeeScript, Bootstrap, jQuery Mobile, jQuery UI, Linux, Svn, Apache Tapestry.
Amazon Web Services - I have worked with it a lot since September 2015, my strengths
are Lambda (using Node.js 4.3), S3, Cloudwatch, IAM, SES and the Node.js SDK. I used
Lambda to lower the hosting costs for cron jobs and repetitive tasks like PDF automatic
filling and scraping of web pages. I have used S3 for static website hosting and as data
storage to be accessed through Lambda. I also use Lambda to communicate with SES. I am
very interested in learning the Serverless framework (https://serverless.com), since I am very
fond of Lambda.
Android SDK - I taught myself the API and its usage during college, I don’t have a deep
knowledge of it, but I know all its basic principles. I have created a demo of an app using
Facebook’s Parse as backend, it helped students to keep track of common expenses and
split costs and debts.
Apache Cordova / Phonegap - I have used it frequently as a standalone framework and
through Meteor. I have created 4 applications that rely on it. When not used through Meteor I
used it with jQuery Mobile.
Apache Tapestry - I used it during my 6 months of work at BellaDati in Prague (Czech
Republic). I learned the markup language and by the end of my stay at the company I was
able to correct issues in the Java components as well. I have not had the chance to write
some components from scratch, but if I had, I would have surely known what to do.
Bootstrap - This refers to the extremely popular frontend framework, I have used it in almost
all the projects I have been involved in.
CSS / HTML - I created my first application (an offline dossier on World War 1) when I was
8, I have not stopped using CSS and HTML since then.
CoffeeScript - The Frontend of BellaDati relied heavily on CoffeeScript, I used it on a daily
basis for 80% of the tasks I was required to carry out. I used it to code new chart renderers
and fix bugs. I loved its easy syntax.
Git - I have started using it in September 2015, using the command line and the Eclipse IDE
(I don’t use it anymore, I switched to Atom). I often use it along with GitHub and Bitbucket. I
am “fluent” in all those tools.
Java - I learned it in college. I scored 100% at the exam on data structures that relied on it
(98% actually, but the professor rounded up the grade). I have used it when I taught myself
the Android SDK and when I was fixing bugs in Apache Tapestry components for BellaDati. I
started to appreciate Object Oriented Programming while learning it.
JavaScript - I taught it to myself in Summer 2014, reading and taking notes from the
Definitive Guide. I love it and I don’t mind asynchronous approaches at all! I have used it in
2. all the projects I have been involved in so far and I am very excited about its recent
developments.
Less / Sass - I use them in the vast majority of the projects I have carried out so far.
Linux - I have switched from Windows 8 to Linux Mint and then eventually switched to
Ubuntu. I love it and I am not going to change OS anytime soon. I don’t mind using the
Terminal to perform tasks that are commonly carried out through a graphic interface, when
that means saving time.
Meteor - I have started using it in September 2015 and I love it! It allows rapid prototyping
and it is very easy to use. I have developed 4 applications using it, some of them support
mobile devices too, as hybrid applications.
MongoDB - I am familiar with some of its low level principles, like indexing, multikey
indexing, _id creation and native support for geolocation and 3D location. I understand the
outputs of the “explain” function and how to query the database efficiently. I have not had the
chance yet to deal with sharding or more advanced features of this piece of software. I can
use it in Meteor apps, in pure Node.js apps, from the command line and other environments.
I created code Amazon Lambda code that interacts with MongoDB instances.
Node.js - I loved it at first sight! I use it at work and in outside work. At work it powers every
backend I have worked on so far. Outside work I use it to scrape the internet, collect and
polish meaningful data for myself and learn more about the world. I am familiar with NPM
and I am learning Yarn. I plan to start contributing to the project on GitHub.
React + Redux - React is the second Single Page Application framework I learned (the first
was Blaze). The ease of use of React along with Redux made them some of my favourite
JavaScript-based tools. I love the purpose variety of lifecycle methods React components
provide, this leads to a drastic rationalization of the tasks and therefore improved
performance and code cleanliness. I tend to exploit React a lot and use Redux only when
strictly needed.
React Native - I have started using it recently, I had no issues learning it and I am enjoying
using it.
Svn - I have used it through one of the Eclipse IDE plugins available, for 6 months.
jQuery - I have used it in every project I have worked on and I developed a deep
understanding of its functions. I also know how to work around some of its issues using
Vanilla JS code created on the fly.
jQuery Mobile - I used it along with Phonegap in a student project while at college.
jQuery UI - I still use it extensively in projects that don’t rely on React because of its massive
portability.