I'm the type of developer that can quickly add a new language, framework or library to my toolset and start using it proficiently in a short amount of time, having done it before with C#, Laravel and Cordova. I will also be someone that wants to make a career in a company, growing with the company, and not just myself so I can jump ship in a couple of years. My last job lasted almost 12 years - I'm hoping the next job will take me to retirement - this is the commitment you will get from me.
- Universidade da Madeira, Portugal — MSc in Informatics Engineering, 2008, 15 out of 20 points (equivalent to 2:1)
- Universidade da Madeira, Portugal — Undergraduate in Informatics Engineering, 2007, 14 out of 20 points (equivalent to 2:1)
Senior web developer, Natural Graphic, UK — 2008-Present
- Work completed: http://naturalgraphic.co.uk/work
- Client communication, from the requirement discussion phase to implementation phase, leading to an increase in productivity;
- Built a CMS from the ground up that was used in the majority (90%+) of the projects involved, leading to an improvement in implementation times;
- Able to work in projects used different tools, when required, like Wordpress;
- Large range of project experience, from a small one-page website highlighting the client’s business, to big multiuser products used by one of the biggest Client-Agency relationship platform;
- Use of SVN as a source control system to improve managing different branches of code and deploying quick updates while working on major features;
- Usage of PHPUnit to write tests when required, leading to error-free code and reducing review and bug hunting time;
- Taking a direct approach, able to adapt to different roles within the company when required, like managing our hosting servers or backup systems.
Examples of projects worked on
Over the 11 years in this company, I used a CMS built in house for implementing the websites. It went through a major rewrite from the ground up in 2013, moving away from a bespoke codebase to use CodeIgniter (at the time CI2, later upgraded to CI3), and Bootstrap as a basis for the templates. It also follows the 7 RESTful routes paradigm. Being built in CodeIgniter it means it follows the Object Oriented paradigm, as well as the MCV paradigm.
It also follows the SOLID principle when writing the code.
Other third-party plugins were used with the CMS, namely jQuery, jQueryUI, Paypal IPN, WorldPay IPN, CKEditor (version 3 and later version 4).
Other projects would use the same Codeigniter + Bootstrap base, but without the use of the CMS. This included a business to business platform for a marketing company, with features like sending briefs to prospective suppliers and managing their replies, showcasing company work through customizable pages by the agency, publishing news through a smart system of building clocks for different types of content (text, text+image, etc.), with its own customization.
The in house CMS was used for projects that ranged from Annual Reports to Estate Agent Website, a Theatre booking system (which used Worldpay for payment processor), or an Art Gallery that not only showcases work but also provides an online shop to sell art pieces (with the payment being processed through Paypal).
Most recently, this custom CMS to implement an Intranet for a multi office UK company with 1000+ employees, with a single on login using Active Directory (and using Kerberos / LDAP library to connect the CMS with the AD cluster).
Other older projects (6+ years ago) include an iPad app written in ObjectiveC, a Joomla 2 website for a medical company, and a couple Wordpress websites of corporate nature.
Web developer, Expedita LDa, Portugal — 2007-2008
Build and deploy websites developed with PHP, Ruby on Rails and web services in VB.net
Worked in an information repository that would be accessed by third party websites through REST web services.
Worked in a booking system for one of the biggest hotel chains in Madeira Island, where my duties relied on the kiosk part of the infrastructure and implementing caching methods to improve the user experience.
Have a good ability to adapt to different languages and technologies. Languages that I have not used recently but have experience with are C#, Java.
Use of several IDEs: Komodo, Visual Studio Editor, Visual Studio Community;
Design tools: Sketch, Photoshop, XD - while I did not do any design work, I had to use these tools to extract assets used on the projects, or do some image manipulation (resizing, cropping).
To improve my skills in different areas that are not focused on my current employment, I’ve made and maintain several hobbyist projects.
- vHUD for Project Cars - Available for Windows 10 (UWP in C#) and Android (Cordova HTML/JS)
- vHUD for F1 2016 - Available for Android (Cordova HTML/JS)
- SimRacingManager - Built with Codeigniter, a platform to manage virtual racing championships. Multiple language support.
- pCars ForceFeedback Tweaks - WebApp (PWA) to view and share force feedback settings for the game Project Cars.
- Idle War - HTML5 / JS game using phaser.io engine
Through my hobbies I also used technologies that I don’t usually use on a day to day at my current professional work experience.
Namely, I have used grunt to do the builds of the Android apps I have made, and while I am still reading through the documentation and doing some basic experiments, I have started to use Webpack in connection to Laravel 6, as is a valuable skill to have, and so far I feel my knowledge of CodeIgniter transfers nicely to Laravel, as many things are quite similar, while at the same time I can see methods that would save me some time in comparison to CodeIgniter.
I’ve also been reading on the ReactJS library, as it is now used by many different companies. While I have just started reading the documentation, I’ve put a quick example at http://reactdemo.oscarolim.pt, that makes use of components, updating the interface, and parent - child event propagation. Source code is also available at GitHub: https://github.com/oscarolim/shares-demo
This website is also an example of my continuous improvement. Without any prior knowledge of Laravel, this platform was set up from scratch in about 15 hours. Read more about this website.