Marco Oliveira

Marco Oliveira

Software Architecture & Engineering

  • twitter icon
  • facebook icon
  • linkedin icon

Synopsis

Having developed web-enabled applications for more than 10 years, I've been able to build a solid knowledge on many technologies.

Academically, I'm currently finishing a Masters degree in Computer and Telematics Engineering, in Aveiro University. This experience has given me expertise on networks, computer architecture, low to high level development (like Assembly MIPS, Assembly x86, C, C++, Prolog, Caml, Java, C#, UML, among others), as well as experience with software architecting, security and optimization.

The main focus of my professional path has been server-side development, and I have had the chance to lead development teams on high profile projects, in which I was in charge of architecting systems, development supervision, and development itself. Still, I've also had my fair share of client-side development, using Adobe Flash, Javascript, and HTML.

I'm also one of the founders of Indigo United, a dream incubator that combines great professionals, currently focused in developing open-source web development tools, that are already being used in some high profile projects.

Summing it up, my main skills include PHP, Symfony 2, OOP, Relational Databases, Non-relational Databases (Couchbase, CouchDB), Full-text searching (ElasticSearch, SphinxSearch), many web-services and APIs (Google Maps, Amazon, Facebook, 7Digital, among others), Adobe Flash, Actionscript 3.0, Javascript, HTML, CSS, ASP.NET 2.0, all of which, I've been using to create scalable, high performance, highly available and failure tolerant web applications.

On a side note, my hobbies, besides developing and all the usual tech stuff, include photography, music and dancing.

Work Experience

DEC 2009 - Present

Lead Developer & Software Architect

Triworks, Full-Time


  • Leading the development team in a Megaupload project, Megabox
  • Building partner relations
  • Team leading and task assignment
  • Server-side development, API and backend tools
  • Client-side web development, Flash development (AS3), optimization, and JS framework architecting
  • Database optimization

SEP 2009 - DEC 2009

Developer

Triworks, Full-Time


  • Debugging
  • Flash + AS3 development
  • PHP development

JUN 2003 - SEP 2009

Web Developer

Freelancer, Part-Time


  • PHP and Database development
  • Flash Development
  • HTML, Javascript and CSS development

Technical Skills

Expert, 6 years

OOP


Having used the Object Oriented Paradigm for a few years now, I am very confor le with architecting a design that is capable of extracting and representing the necessary components from the problem domain into the solution domain, maintaning a coherence, which enables the use of a unified language between the client and the developers, and allows a more segmented, collaborative work. I have been responsible for designing several models from the top-down, giving me the capability to preempt future problems, which combined with my database development experience enables me to design and implement solutions capable of delivering great performance.

Expert, 8 years

PHP


Currently my server-side language of election, I mainly develop in PHP using an OOP (Object Oriented Programming) approach. I have been using PHP to develop everything from small institutional websites, with just a few hundreds of visitors a month, to high profile RIAs, combining many advanced features, like fast full text searches, advanced caching, Amazon integration, Google Maps, among others, while still being capable of handling hundreds of thousands of users a day, which gave me experience in high performance scalable development.

Advanced, 7 years

Relational Databases


A big part of my work has envolved relational databases, like MySQL, PostgreSQL and Microsoft SQL Server. I've been responsible for implementing systems capable of handling databases with tenths of GigaBytes of information, with high availability and speed. I am capable of handling advanced databases architectures, with replication, in order to scale information systems.

Medium, 2 years

Non-relational databases (aka NoSQL)


Having been an early adopter of NoSQL solutions, I've had the chance to play around with several solutions, like Couchbase, CouchDB and MongoDB, and am currently using Couchbase on a daily basis. These sort of solutions have enabled me to design elastic systems, which scale beautifully and in a painless way.

Advanced, 7 years

Relational Databases


A big part of my work has envolved relational databases, like MySQL, PostgreSQL and Microsoft SQL Server. I've been responsible for implementing systems capable of handling databases with tenths of GigaBytes of information, with high availability and speed. I am capable of handling advanced databases architectures, with replication, in order to scale information systems.

Medium, 3 year

Symfony PHP


Used the Symfony PHP framework in a few projects, giving me the oportunity to work with some state of the art techniques and technologies, like the MVC Architectural Pattern, Three-Tier Architectural Pattern, Object-Relational Mapping (using Doctrine), among others. Above all, while using these technologies I've developed a knowledge that I am able to apply in large scale projects, even when not using PHP.

Expert, 12 years

Adobe Flash + Actionscript 3.0


While working with Adobe Flash for about 11 years, ever since what was then known as Macromedia Flash 4, and now Adobe Flash CS6, I've followed the technology closely, working with AS2 and later AS3 in order to develop rich experience websites and interfaces. During this time, I've become very knowing of the technology, and for a long time, used it almost on a daily basis, whether I was the one implementing, or just leading others.

Additional Tools / Technologies


Along all projects I've been involved with, I've worked with several different technologies, that aided me to get the job done. Here's a list of the main technologies I've used:

  • ASP.NET (C#, Visual Basic)
  • Javascript
  • HTML
  • CSS
  • C, C++, C#, Objective C
  • Java
  • UML
  • Prolog
  • Caml
  • Mercury
  • Assembly (x86, MIPS)
  • Flex
  • Bison
  • Matlab
  • IBM Rational Software Modeler
  • Google Maps API
  • Amazon Web Services
  • SphinxSearch
  • Adobe Flash
  • Adobe Dreamweaver
  • Adobe Fireworks
  • Adobe Lightroom
  • Adobe After Effects
  • Wireshark
  • DICOM

Education

Universidade de Aveiro

Finishing Master degree


Currenty attending a Master degree in Computer and Telematics Engineering (Engenharia de Computadores e Telemática) in Aveiro University (Universidade de Aveiro), in Aveiro, Portugal.

This course focuses several fields of study, such as Electronics, Computer Architecture, Assembly programming, Signal Processing, Telecommunications, Networks, Operating Systems, Software Optimization, Databases, Software Architecture, Information Systems and Web Development.



Email Me