Evaluation Guide

November 2015

The pre-sales team needed to scale their processes, since they were constantly replying to the same questions from prospects and partners.

We created an evaluation guide to answer the most frequent questions people have when evaluation a RAD platform.

That way, prospects can have all the information they need, without needing to contact OutSystems.

My contributions to this project:

  • Help define the information architecture;
  • Responsible for the more technical content like platform architecture, security, performance, integrations, and others.

My contributions helped OutSystems:

  • Save pre-sales and sales representatives time. The knowledge base has answers for the most common problems faced by customers;
  • Create a self-service evaluation process. When prospects engage with OutSystems, they have already evaluated the product on their own, and are ready to close the order.

Check the evaluation guide


Support Knowledge Base

September 2015

As a company that is growing fast, OutSystems needed to scale the support team processes. One of the ways for this, was to decrease the number of incoming support tickets, by creating a knowledge base that allows users to find solutions to the most common problems.

My contributions to this project:

  • Help define the information architecture for this knowledge base;
  • Define styleguides for contributors;
  • Review all titles and descriptions to make them SEO friendly;
  • Serve as editor to review all customer-facing content, and bring consistency to the articles.

My contributions helped OutSystems:

  • Reduce the number of support tickets. The knowledge base has answers for the most common problems faced by customers;
  • Make the production of content more agile. More teams are now contributing with customer-facing content.

Check the knowledge base


Published Article on InfoQ

July 2015

After my talk at Write the Docs, I published an article on InfoQ. This article expands on my talk. It explains in more detail:

  • Why you should avoid documenting the UI;
  • How to check if you're already doing it;
  • How at OutSystems we've changed from documenting the UI to document the tasks users care for;
  • The process we were using to create documentation;
  • What we've learned from that journey.

Check the article


Online Training Courses

May 2015

On May 2015 we launched a second version of the online training. We got feedback from developers and partners that they needed more training content. We also wanted to make the online training even more engaging for new users.

My contributions to this project:

  • Define an MVP for the online training offer;
  • Define key success metrics;
  • Structure and create content for the 3 courses available;
  • Create the information architecture for the online training pages.

My contributions helped OutSystems:

  • Have a more engaging and effective training. Based on developer's feedback and metrics collected, we removed content that was confusing.
  • Have 1.5 times more training content for prospects, users, and partners to train their developers for free.

See the live version


Speaker at Write the Docs

May 2015

I spoke at Write the Docs in Portland, about what we had been doing at OutSystems. I told the story of how we had stopped trying to document the UI, and started creating user-story driven docs. We had changed our focus from documenting windows and buttons, to document tasks.

I talked about the impact this had on the culture of out team, and the impact it had for the rest of the company.

And closed by explaining the process we were using at OutSystems to create documentation in an agile way.

Check the talk or, see the abstract


Review IDE User Interface Copy

September 2014

During usability tests I noticed that lots of new users relied on the existing tooltips to learn their way around the IDE.

After seeing some users confused, I reviewed the tooltips. Then I validated the new proposal with usability tests.

My contributions helped OutSystems have an IDE that is easier for new users to explore.


Documentation for Visual Data Manipulation Widget

July 2014

With OutSystems Platform 9, we launched a visual way to query data from the database.

Instead of writing SQL, developers can query the data in a visual way. The IDE always shows the data resulting from the query, making it easier to refine the database queries as you go.

My contributions to this project:

  • Lead and implement the documentation for this feature;
  • Change internal processes to create an agile review process;
  • Change internal processes to document user stories, not features.

My contributions helped OutSystems:

  • Increase page views by 8 times, compared with previous existing documentation;
  • Save developers time, by having documentation that is search engine friendly;
  • Save developers time, by having documentation that goes to the point, and explains how to solve the problems they have;
  • Save time on the maintenance efforts. There were almost no support tickets related with this piece of documentation;
  • Have documentation that shows the value of the product to developers. The documentation makes the benefits obvious, without having to list them, or even mention them.

Check the live version


Architecture Training Course

May 2014

Developed an online course for developers to learn how to architect their OutSystems Platform apps.

As customers and partners scaled from a single app to tens of apps, they wanted to learn architecture best practices. They wanted to ensure they created apps that scaled, and didn't create maintenance problems.

My contributions to this project:

  • Coordinate subject matter experts, to agree on a set of architecture principles;
  • Condense lots of information into 3 structured training videos;
  • Create video storyboards and scripts.

My contributions helped OutSystems:

  • Save customers time and money, by providing free online training about architecture principles;
  • Educate their customers about the problems of a bad architecture, and how to deal with it.

Check the live version


Security Governance API documentation

December 2013

On version 8.0.1 we launched an API to manage the permissions of IT users across the whole infrastructure. It was already possible to do that using a management console, but starting on 8.0.1, you could manage permissions programmatically.

My contributions to this project:

  • Review names of methods and parameters, to make the API consistent and easy to use;
  • Work with the development teams to create styleguides for future APIs;
  • Document the API, with C# and Java samples;
  • Create styleguides for future API documentation.

My contributions helped OutSystems:

  • Save customers time, by having APIs that are consistent and easy to develop with;
  • Have less support tickets, by having an API that is fully documented with code samples;
  • Save time by having styleguides for developing new APIs and new documentation.

See the API docs


System Requirements

November 2013

The OutSystems Platform system requirements documentation was hard to understand by prospects and new users. It also lacked relevant information like software permissions, or ports that need to be open.

I gathered stakeholders from product management, support and, maintenance to agree on the personas and use cases that the documentation needed to address.

Based on this, I rewrote the system requirements documentation, to make it accessible for first-time users.

My contributions helped OutSystems:

  • Have less support cases related with installations;
  • Have centralized information about all the requirements to install OutSystems Platform on-premises.

Check the live version


Developer Boot Camp

October 2013

After launching a new online training course, we reviewed out on-site training offer.

I wanted to see first-hand the impact our changes made on customers, prospects, and partners. So I went to the field to deliver a 5-day developer boot camp.

I learned a lot, and collected tons of feedback. I used that to iterate the online training, on-site materials, and certification exams.

My contributions helped OutSystems:

  • Shorten the change-feedback cycle;
  • See that the best way to get real customer feedback, is by proactively searching for it.

OutSystems dev boot camp


Certification Exams

July 2013

OutSystems offers a certification program. In the developer track, there are three certification levels.

I've helped create the certification process. I've developed the questions for the first level, and reviewed the questions for the other two levels.

My contributions helped OutSystems:

  • Have a certification process that's easy to understand by customers and partners;
  • Separate the training and certification offers. This was important for key partners, that wanted to do in-house training, and certify their developers;
  • Scale the certification exams, by having a huge pool of questions.

See the certification program


UX Training Course

May 2013

The theme for OutSystems Platform 8 launch was "user experience". As part of the launch, we created a UX course for developers.

We went through several books, and presentations about user experience and usability. We condensed that knowledge into six training videos for developers.

My contributions to this project:

  • Identify common usability problems in applications developed with OutSystems Platform;
  • Gather industry best-practices, and summarize them in a way that makes sense for developers.
  • Create a checklist for developers to evaluate their apps;
  • Create storyboards ands scripts for the course content.

My contributions helped OutSystems:

  • Have a scalable way to evangelize developers and partners about the importance of user experience;
  • Have training resources about front-end development.

Check the live version


Online Training Course

Dec 2012

Developed an online course for developers to learn how to create enterprise-grade web apps with OutSystems Platform.

We started by identifying the core concepts that a developer had to master, and the dependencies between those concepts.

Then we created 10-minute, informal videos to teach developers about those concepts. During the videos we create several apps. This allowed developers to learn the core concepts while building a real app.

The initial iteration of this online training course, was released on Q4 of 2012. It had 58 videos, and covered:

  • Installation;
  • Basics of web paradigm;
  • Building the first contact management app;
  • Data modeling and querying;
  • Data binding and forms;
  • Form validation;
  • Reusable logic;
  • Reusable UI;
  • Using CSS;
  • Using AJAX;
  • Using UI components;
  • Role-based access control.

My contributions to this project:

  • Identify the core concepts that developers need to master, and dependencies between concepts;
  • Create demo apps to build during the course;
  • Create storyboards ands scripts for the course content;
  • Create lesson titles and descriptions, to ensure they are SEO friendly;
  • Test the course with new hires, and iterate based on feedback.

My contributions helped OutSystems:

  • Have a scalable training platform that's used by 500+ new users every month;
  • Be more successful reaching out to developers. Each video has more than 10K views.
  • Have materials that key partners are using for internal training;
  • I've leveraged this course, to create a process to ramp-up new hires for the whole engineering department.

Check the live version


Documentation for Application Lifecycle Management Tool

May 2012

In OutSystems Platform 7, we released an application lifecycle management console.

This console allows managing all applications for an infrastructure, in a centralized way. From staging with dependency analysis, to application configurations, and IT user management.

I took this opportunity, and challenged the way the company created documentation. Instead of creating documentation for each feature, or screen, we focused on documenting user stories, like:

  • As an IT manager, I want to specify a security policy that prevents unauthorized changes to an application;
  • As a developer, I want to stage an application from development to quality assurance;
  • As DevOps, I want to configure an application running in production.

My contributions to this project:

  • Changed internal processes to create user-story centric documentation;
  • Identify which user stories to document. For this I had to coordinate with product management, engineers, and support;
  • Write, gather feedback, and publish all the customer-facing documentation;
  • Customize the documentation look and feel.

My contributions helped OutSystems:

  • Have full documentation for the tool on the release date. This was not common practice;
  • Have documentation that has almost 2K monthly page views, and requires almost no maintenance;
  • Create on-site training materials, with almost zero effort. Most of the content was leveraged from the documentation.

Check the live version