William R. J. Ribeiro

Senior Software Engineer

Bachelor in Computer Science
professional developer since 2006
born on March 6th, 1985 – BR
living in Lisbon – PT

  • View William R. J. Ribeiro's profile on LinkedIn
  • Follow @williamrjribeiro

"I'm an easy going Brazilian, eager to learn new skills and savour new experiences that can enrich me. I also love working with multi-disciplinary people and cultures as I believe a good diversity, when in harmony, can lead to spectacular outcomes. My utmost professional goal is to use my professional skills to positively impact society in a direct way. I recognize that I still have a long way to go but this journey always excites and motivates me."

I speak and write in:

  • Native Portuguese
  • Excellent English
  • Good Spanish
  • Basic Dutch
CV updated in March 2018

I love to:

  • Create value to people via products that are useful & delightful.
  • Design and develop applications, paying close attention to detail, quality & performance.
  • Work on web, mobile or open source projects.
  • Communicate, share ideas and meet new people. I'm an easy talker and write from time to time.
  • Learn new things. I'm always looking to improve my skills and learn something new.
  • Work with other people in order to become an effective team.
  • Help other people to achieve their best self through coaching and menthoring
  • Code code code!

Most Valuable Skills:

  • Solid knowledge of modern JavaScript development ( ES6, Babel, Webpack) used for React and NodeJS apps.
  • Strong OOP programming experience with C++, Java, Qt/QML & ActionScript 3.
  • Responsive Rich Web Applications development with HTML5 + JavaScript + jQuery + CSS & Adobe Flash + Flex. Cross-browser-platform development.
  • Experience leading small teams & managing small software projects.
  • Agile Software Development with Scrum and Kanban.
  • Entrepreneurial spirit. Proficiency with the Business Model Canvas.
  • Proactive learner, always looking for skill improvements & tool mastery and process automation.
  • Verbal and written communication.
  • Cultural flexibility and sensible team player.

Indie Apps


May 2015 – Apr 2018, BlackBerry World

It's a native Qt/Cascades BlackBerry 10 app made entirely by myself. From idea, design to coding. It's main purpose is to upload Remember app data to Microsoft OneNote. It's multithreaded and relies on OneNote REST API. Yes, it was made while I travelled the world.


Jan 2013 – Jan 2014, Github, BlackBerry World

It's a native Qt/Cascades BlackBerry 10 app for multi touch image editing. It was an independent side project for learning where I was the team leader and main developer. The app is open source and it can be found on Github.

Software Engineer at Talkdesk

Apr 2017 – Present – PT

Front End React Developer

  • React app developer for new front-end product applications that leverage several other frameworks like Redux, Redux Sagas, React-Router, Apollo-Client(GraphQL), Storybook.
  • Unit and Integration testing with Enzyme, Mocha & Jest.
  • Collaborator of a proprietary React UI framework and design system.
  • ES6 JavaScript code and tooling (Babel, Webpack, Yarn).
  • Build pipeline development with Gulp and several other NodeJS modules.
  • Maintainer of legacy Backbone front-end application.
  • Part of a Agile Scrum multi-disciplinary team: Product Manager, QA & Designers.

Software Engineer at WoodWing Software

Feb 2011 – Apr 2014 – NL

Flex Developer ♦ 12 months

  • Mobile Flex developer for the BlackBerry Playbook tablet.
  • Small but effective Agile(Scrum) team.
  • Designing and implementing the app architecture, reusable visual components, high performant, touch optimized interface.
  • Created our own lightweight MVC framework.
  • Maintain Jenkins CI, generate release builds.
  • Assigned to work at Adobe in Seattle, WA to help them improve their Digital Magazine Reader.

Customer Support Engineer ♦ 10 months

  • Techinical support for HTML5 Components, HTML5 Store and Adobe DPS Migration.
  • Attended expert training for DOJO, JS, CSS, HTML5.
  • Cross-browser development: iOS, Android, BlackBerry.
  • HTML Store: RESTful Single Page Application. Built with DOJO Toolkit, Grunt, Jasmine.
  • Assisted multiple international clients using Jira/Confluence

DOJO/SASS/JS/HTML5 Expert ♦ 17 months

  • Built a new HTML5 SPA RESTful app from scratch.
  • Lead client developer for a big Scrum team.
  • Design and implement software architecture for a cross-platform web client application.
  • Implemented indepedent re-usable modules: UI Components, Services, Utilities
  • Give training on modern web development with DOJO/ SASS/Grunt/Jasmine for the new members of the team.
  • Started working with Git, designed our own branching model based on Git Flow.
  • Optmised Jenkins CI for release builds and automated unit testing
  • 95% Code Coverage with Instabul

Additional Professional Experience

Bellow you can find a short summary of my older job positions. Go ahead and shcedule an interview so I can tell you all their details.


Jul 2016 – Mar 2017, PT

Senior Web Application Developer with Java EE 8 stack including PrimeFaces & JSF 2 that integrated with SOA services. Worked mostly on front-end webapp, developing UX and UI with CSS3 and Bootstrap 3.


Aug 2009 – Nov 2010, NL

Java development with GigaSpaces, Spring, Hibernate, JDBC and Maven. Software quality assurance with JUnit, Sonar and Hudson. Profiling with JProfiler and stress testing with Grinder & JMeter. Deployment, customization and extension of JCR CMS (Jackrabbit, Hippo 7, Magnolia, Alfresco). Scrum Agile development process. Started as AIESEC Technical Trainee and later was hired as full employee.


Nov 2006 – Feb 2009, BR

Adobe Flex and AS3 development of Rich Internet Applications using popular frameworks: PureMVC, Google Maps Flex and ESRI ArcGIS. I was the team leader made of 4 developers for the RIA client. I was also responsible for the development of a Remote Camera Monitoring System. It was developed with Java, Spring, Hibernate, Struts2, JSP and WebORB. Created mobile clients for MIDP, CLDC (old school) phones.


Oct 2005 – Oct 2006, BR

I was responsible for validating Software Specification and Use Cases Definition documents. I also created Web applications prototypes and mockups of functional software. I was also the webmaster and web designer of the department's intranet portal. I had daily work with HTML, CSS, JavaScript and using tools like Macromedia Fireworks &Dreamweaver, Gimp and Apache Server.


Front-end Web Development Instructor

Mar 2018 – Apr 2018

Teaching the basics of web development with HTML, CSS, JavaScript and their best Practices. Bootcamp by portuguese startup Eddisrupt.

Oracle Certified Professional

Oct 2010

Certified Java SE 6 Programmer by Oracle Certified Professional Program Authority.

Merit of Honor for the young researcher


Awarded for my Bachelor's Degree Project
"Previsão de Cenário para o Controle de Tráfego Aéreo do CINDACTA I".

Gap Year - Explorers 3.0

Feb 2015 – Feb 2016, Blogspot

My wife and I decided to do something extraordinary to celebrate our 30th birthday: fulfil our dreams! It turned out that we had to travel all over the world to accomplish it. And that's exactly what we did! After almost a year of preparation, we left our lives in NL and we took off. Long story short: life changing experience. I urge you, it's worth to pursue your dream no matter what it takes.

Nine Green

Jan 2006 – Mar 2007, BR

Volunteer Game Designer. I was part of the managing team that coordinated 16 other people with several different specialization. This was my first team management experience. Our final product was a full multimedia game for mobile phones developed in Java ME. I was also a C++ game developer. Mainly worked with OGRE3D, OpenGL, SDL, STL libraries.

AIESEC Brasília

Mar 2008 – Aug 2009, BR

Member on the Talent Management team. After some training and preparation I was responsible for the Coaching Program, its materials and training for new coachs. I ended up being the coach for many members.