Senior Software Engineer Summary
- Background in full stack web application development (interfaces, backend, APIs and data modeling) and familiar with many modern development stacks as NodeJS, Java, Python, Golang and frameworks (Django, ExpressJS, Spring Boot)
- Proficient with Linux system administration/infrastructure engineering with popular cloud providers as AWS/Google Cloud, configuration management, continuous delivery/continuous deployment (Ansible, Terraform, Docker, Kubernetes, Jenkins and Gitlab CI)
- Proficient with Infrastructure-as-code and Automation (Ansible, Terraform, Docker)
- Proficient with Container Orchestration and tooling (Kubernetes, Helm, Kustomize, etc)
- Proficient with application and infrastructure monitoring (New Relic, Elastic stack, Prometheus, Grafana)Continuous Deployment and monitoring solutions (Logstash/Kibana, Prometheus, Grafana)
- Working knowledge of Cloud Computing architectures (Cloud Native applications)
- Creative continuous learner, self-motivated and autonomous attitude to work
- Quality engineering mindset and passionate about open source, innovation and communities
Work Experience
ThoughtWorks GmbH, September 2019 - February 2020 (Hamburg/Berlin, Germany)
Senior Cloud Infrastructure Engineer Consultant
As part of a cross-functional data science team in a data engineering project for a large external German e-commerce client, I’m supporting my team and consulting the client in Infrastructure provisioning and Cloud Automation with CloudFormation/AWS infrastructure as code and backend development of REST APIs with Java Spring Boot. I also support the project as a Cloud and application security, having grown into the team role of Security Owner while aligning compliance with the client Security Operations teams.
Container Solutions, April 2018 - June 2019 (Amsterdam, Netherlands)
Senior Cloud Native Engineer Consultant
As Cloud Native (Automation) Engineer I was part of two customer teams helping our clients with Cloud Native transformations.
Contributed to:
- Development of proof-of-concept innovation project for large international (UK) client:
- Microservice application development in Python, Golang; end-to-end test development (Pytest)
- Designed and developed infrastructure automation code (Gitlab CI, Kubernetes, Helm, Terraform) for deployment of application stack both on Google public cloud and on-premises (VMWare Esxi)
- Cloud migration of legacy software (remote desktops) for large international (NL) client:
- AWS public cloud Infrastructure-as-code automation with Terraform
- Company blog, events and public speaking
- Contributed to Open Source products/projects
- Mentoring of colleagues
Zimmerman Zimmerman, November 2017 - March 2018 (Amsterdam, Netherlands)
Full-stack Developer
Reporting to the CTO, refactored existing software applications and created new infrastructure to support Docker container deployments:
- Dockerized existing software stacks (including adding support for dockerized development and test environments with Docker Compose)
- Automated Docker image builds with Docker Cloud as a build server
- Designed, planned and deployed new infrastructure to support dockerized deployments
- Automated deployment of Rancher Server (High Availability mode) on Amazon ECS with Terraform (Route53, RDS, EC2, ACM)
- Automated creation of Rancher Server development and production environments (Kubernetes clusters and respective server nodes) with Terraform on AWS (Route53, RDS, EC2, ACM)
- Created Kubernetes manifests (with Kubernetes Helm) for the newly dockerized software stacks and deployed to production Kubernetes clusters:
- Documented new server infrastructure and provided support and training to work colleagues regarding Docker containers and Rancher/Kubernetes deployments and cluster management
Other tasks and initiatives included:
- Support newly hired interns bootstrapping development environments
- Knowledge sharing with the team regarding Docker and Docker related technologies (Docker-Compose, Rancher) and monitoring solutions (Elastic.co Stack) including hands-on and demos
- Promoting better security practices by introducing and on-boarding the team on Keybase.io for safe infrastructure “secrets” storage and sharing
- Groundwork on creating OpenAPI definitions for a REST service (https://github.com/zimmerman-zimmerman/oipa)
Sanoma Media NL, September 2016 - August 2017 (Hoofddorp, Netherlands)
Senior Fullstack Developer
Joined existing Scrum teams and assisted the development of new and existing web projects:
- Assisted the development of internal “devops” products (Golang development)
- Development on online Payment Portal (Django, React.js), Sanoma Media solution for online payment of magazine subscriptions
- Frontend (Javascript) development and backend development (Django) on Sanoma Account (Sanoma Media single sign-on solution for website properties)
- Contributed for Sanoma Media Open-Source effort through hackathons and spikes
Repositive.io, September 2015 - August 2016 (Cambridge, UK)
DevOps Engineer
Responsible for server infrastructure. Extensible Ansible (with custom Ansible role development) and Vagrant based automation, following best practices of Infrastructure-as-code:
- Automated provisioning and documented current software stack infrastructure (frontend/backend Node.js apps, Postgresql, ElasticSearch, Nginx) deployment on IBM Cloud (Softlayer) and Amazon AWS
- Automated and provisioned IBM Cloud Softlayer/Amazon AWS server cloud infrastructure with Ansible playbooks (development, staging and production environments)
- Integrated provisioning tasks with Ansible Tower
- Integrated server and application resource monitoring with New Relic(c)
- Automated and streamlined development environments with Vagrant and Ansible integration
- Assisted frontend and backend web development (team) with feature development, testing, bug reporting/fixing, Git workflows.
Freelancer, July 2015 - September 2015 (Edinburgh, UK)
Python web backend / UI frontend development
Developed web application for the Edinburgh University Psychology Department, responsible for managing the pool of volunteers and workflow for supporting the execution of psychology experiments. Platform built in Python / Django 1.8, PostgreSQL, Celery, Vagrant (plus Ansible), Bootstrap plus Bootstrap Material Design, deployed on CentOS 7.
Hanzo Archives (UK), September 2013 - April 2015
Python web backend / UI frontend development, IT operations for customer faced web product reporting to the CTO, in Web Archiving
- HTML/CSS (SASS) and Javascript (Jquery, AngularJS plus Restangular, Bower, Gulp) frontend development
- Django backend and API development (Django Rest Framework, PostgreSQL)
- Infrastructure automation and deployment (AWS, Linux, Nginx, Supervisord, Docker, Vagrant, Puppet, Ansible, Fabric)
- Unit test suite development and Continuous Testing integrations
Freelancer (Remote), October 2010 - September 2013
Spinta (EUA), Python/Django Developer (1 Year)
Ground-up development of http://myspinta.com as part of a remote, geo-distributed cross-functional team, including initial requirements analysis, data modeling and front-end template development. Project built on Django 1.4, Postgres, Heroku and Amazon hosting. Source code control based on Git.
SitePen, Javascript development
Developed custom Dojo Toolkit [1.x] Dijit widget for a SitePen client
Paymill (DE), Javascript Developer:
Integrated Paymill.de REST API on Zapier.com, creating a new service
Monetate Inc. (EUA) - Javascript Developer
Front-end Javascript development of client marketing campaign customizations, using several libraries as Google Closure and Sizzle.
Modelo3 (PT), Python/Django Developer
Assisted the Modelo3.pt team during workload peak, developing specific (Django) project features and implementing Sentry front-end and back-end error logging aggregation and notification support.
Jobhelp4u (UK), Python/Django Developer
Improved existing Django projects by adding source versioning (importing into a GIT repository), dependencies management with pip requirement file, augmenting the backend with Django-Grappelli and file upload management.
Zlabs (PT) - Python/Django developer
Developed on the following Django websites for Zlabs.org
- http://www.igespar.pt : Implemented specific site search (archeological sites) with Django ORM, querying a secondary Oracle database
- http://www.loja.bussola.pt: Developed the Django backend for the website, using django-shop for the e-commerce support;
Full-stack LAMP Developer and System Administrator; Porto, Portugal - July 2000 - August 2010
For the larger part of the decade, for several Service/Media companies, worked as a full-stack PHP developer implementing content, e-commerce and business applications. Apart from software development and across several projects/teams, I was also responsible of operations (server provisioning, maintenance and deployments).
Education
- Attended the 1st year of Mechanical Engineering
- Scientific-technological stream High school degree in Information Technologies and Systems at https://www.colgaia.pt
- Certified Coaching License (“Certificado de Aptidão Pedagógica”)
Languages
- Native Portuguese (PT-PT)
- Fluent in spoken and written English
- Workable knowledge of spoken and written French
Open Source and community participations
Publications & Public Speaking
Conference/meetup talks:
- “Deploying Frontend web applications with Containers” (Amsterdam, 2018): https://zemanel.eu/posts/deploying-frontend-web-applications-with-containers/
- “Micro-services for perfectionists with deadlines” (DevopsDays Warsaw 2018): https://gitlab.com/zemanel/micro-services-for-develops-with-deadlines
- “Using FUSE [filesystems] inside Docker images” (Amsterdam, 2018): https://www.meetup.com/GOTO-Nights-Amsterdam/events/250132727/
- Invited speaker at London ajax Miniconf, 18 October, https://zemanel.eu/posts/2010/09/22/nodejs-knockout-tweetirc/
Attended conferences and workshops:
- UnrealFest 2019
- AnsibleFest London 2016
- PyData London 2014
- “Opensource in the Public Administration Services” at Tagus Park in Lisbon, 09/29/2004 XML workshop, Microsoft MSDN Portugal, 2000
Competitions and events:
- Competed on Node Knockout 2010 (http://nodeknockout.com), a 48h competition to develop a Node.js web application from scratch, for which I developed http://tweetirc.com. My (single member) team, http://nodeknockout.com/teams/celestial-being, reached 10th position of 204 teams around the world.
- Python Portuguese user group organizer and speaker
- Participant on the Portuguese Ruby community
- BristolJS and Python Edinburgh meetups
Links
- LinkedIn: https://www.linkedin.com/in/josemoreira
- Github: https://github.com/zemanel
- Gitlab: https://gitlab.com/zemanel
- Twitter: https://twitter.com/zemanel
- Keybase.io: https://keybase.io/zemanel
- IRC: zemanel on Frenode