João Portela

Curriculum Vitae

Personal Information

Full Name
João Pedro Pereira da Costa Portela
City of Residence
Porto, Portugal (Remote)
Nationality
Portuguese
Mission
Build well designed software, that make people's lives easier and more enjoyable.
Technical Skills (Expert)
JavaScript, TypeScript, NodeJS, React, Redux, Electron, MongoDB
Technical Skills (Familiar)
Golang, Rust, C++, HTML, CSS, Java, C, C#, PHP, SQL, Ruby, Python, CFML, Web APIs, Android, Rails, OpenGL, Less, Redis, RabbitMQ

Work Experience

Position
Lead Frontend Engineer
Dates
June 2020 - now
Main activities
  • Development of the new web app for Fitbod, laying down the base technologies and architecture.
  • Maintenance of the subscription and user management systems, admin application and email schedulers.
  • Technologies
    TypeScript, JavaScript, NodeJS, Next.js, React, Storybook, MongoDB, Parse
    Employer
    Fitbod
    Position
    Senior Engineer
    Dates
    July 2015 - April 2020
    Main activities
  • Part of the team that created InVision Studio (Data, SVG and Sketch import, Publishing, Foundational work)
  • Development of the Studio Platform (Plugin ecossystem) and Studio Runtime (frontend architecture framework)
  • Development of Motion (which pivoted into Studio)
  • Implementation of several features, bug fixes and performance improvements for the InVision main application (Slack API integration, Activity feed)
  • Technologies
    JavaScript, TypeScript, NodeJS, Electron, SVG, Canvas, Golang, Redis, MongoDB, RabbitMQ, Docker, CFML, AWS (S3, SNS, SQS)
    Employer
    InVision
    Position
    Senior Developer
    Dates
    August 2014 - July 2015
    Main activities

    Tech Lead on the Broadwand project, on a technical team with 2 members.

    Responsible for designing the architecture and the implementation of 7 micro-services, 2 Android apps and 1 Firefox add-on.

    Technologies
    JavaScript, NodeJS, Redis, MongoDB, Firefox Addon SDK, Android
    Employer
    Imaginary Cloud
    Position
    Front-End Developer
    Dates
    September 2012 - August 2014
    Main activities

    Development of the frontend layer of the Betfair Sportsbook, having been involved on it since the first day of its inception.

    Tech Lead for the Google Analytics project and a member of the Frontend Architecture Group.

    Technologies
    HTML, CSS, JavaScript, YUI, Less, Jasmine
    Employer
    Blip / Betfair
    Position
    Freelance Web Developer
    Dates
    May 2013 - December 2013 (Part-time)
    Main activities

    Worked on the frontend of four web pages, by implementing responsive, cross-platform and cross-device layouts.

    Technologies
    HTML, CSS, JavaScript, jQuery, Photoshop, PHP
    Employer
    Waynext
    Position
    Google Summer of Code - Student
    Dates
    May 2009/2010/2011 - August 2009/2010/2011
    Main activities

    Participated in three editions of Google Summer of Code as a student. Successfully completed all three web development projects.

    Technologies
    HTML, CSS, JavaScript, Java, Spring, Perl
    Employer
    Google / OpenMRS / Dreamwidth

    Education

    Dates
    September 2007 - July 2012
    Title of Qualification
    Master in Informatics and Computer Engineering (B.Sc. + M.Sc.)
    Principal Subjects
    Software Engineering, Programming, Mobile Computing, Database Design, Systems Design, Project Management, Artificial Intelligence, Web Development, Computer Architecture, Operating Systems
    Main activities
    • Thesis: Multi-touch Interaction for Interface Prototyping (Grade: 19/20).
    • Researcher: 6 months grant on applying natural user interfaces to collaborative 3d urban environments (C#/XNA).
    • Team Leader: of 8 members, in an academic project done for a real company (iTds).
    • NIFEUP Member: Software developer for a classifieds portal for the FEUP community (Ruby on Rails).
    Organization Name
    Faculty of Engineering of the University of Porto (FEUP)
    Grade Point Average
    17 out of 20

    Personal skills

    Language skills
    Native Portuguese, Fluent English, Basic French, Spanish, Japanese
    Social skills
    • Passionate for developing team processes, lean methodologies, business development and user centered design, by experience and self-learning.
    • Ability to work in teams and under pressure, through tight deadlines, while maintaining optimism and a good vibe around the team.
    • Experience in mentoring junior developers, code reviews and dealing with stakeholders from different backgrounds.
    • Strong sense of responsibility, accountability and proactivity, by having worked directly with clients.
    Certifications
    FCE - First Certificate in English (Grade A, C1)
    Certified Scrum Master - Scrum Alliance
    Artistic skills
    Formal classical training on Piano, Violin, Musical Formation and Choir.
    Driving Licences
    B, B1