John C. Kealy
Full Stack Developer

Technical Skills

Tools change quickly, and good developers adapt. I use whatever tools will solve a problem.

I started programming in an academic environment, usually with Python. Much of this work involved data analysis. This meant a lot of visualization work (mostly Matplotlib) and number crunching (mostly Numpy).

During my PhD, I developed a passion for the Web. My learning at this stage always revolved around finding the best solutions for my own needs. So I became proficient with vanilla Javascript before choosing a frontend framework. I learned CSS before Bootstrap, Flask before Django, and Nginx before Docker – in other words, fundamentals before trendy tools!

The table below should give a flavour of my preferred technologies.

Python
Django | Django-rest-framework | Matplotlib | Basemap | Scipy | Numpy | Flask | SQLalchemy | Gunicorn | Beautiful Soup | Celery | Virtualenv | Anaconda
Javascript ES6
Vue.js | Axios | Vuex | Vuetify | Nuxt.js | Quasar | Aurelia | npm | Webpack | D3.js | Leaflet.js | Plotly.js | WebGL
Linux
Ubuntu | CentOS | Red Hat | Bash | Zsh | ssh | ImageMagick | SysAdmin
Testing
Pytest | Unittest | Selenium | Mocha.js
Ruby & PHP
Laravel | Ruby on Rails | Nokogiri | Rspec
Fortran
Numerical modelling | High-Performance Computing (HPC)
Version Control
Git | Github | Gitlab
Databases
PostgreSQL | DynamoDB
Backend
DigitalOcean | Heroku | Docker | DNS | REST APIs | Nginx | CaddyServer | AWS | SSL/TLS | VirtualBox | web security
Frontend
HTML5 | CSS3 | SCSS | Bootstrap | Responsive design | AJAX | Inkscape | Figma