OutSystems CTO talks about low-code software development

Image courtesy of OutSystems

The COVID-19 pandemic isn’t the only thing disrupting technology today. Say hello to the “low-code” and “no-code” movements, which are changing how applications are being made.

Low-code is a software development approach that involves the use of a graphical user interface instead of traditional hand coding. Such platforms still require technical knowledge but because they require minimal coding, they enable good coders to work faster and speed up the development process. No-code platforms, on the other hand, provide no means of manually editing code, and are aimed at non-programmers like business users.

One of the organisations leading the low-code software development charge is OutSystems, which built the low-code platform with the same name back in 2001. Over the years, OutSystems evolved from being the first low-code platform for application development into a multinational software company that – as of this writing – has 535,000 community members, over 400 partners, and thousands of customers across 87 countries and 22 industries.

We recently asked Patrick Jean, Chief Technology Officer at OutSystems about their technology challenges, the lessons from his tech career, a new cloud-based platform, and software development, among other topics. Here is what he had to say.

You joined OutSystems last year after holding key technology leadership roles in organisations such as Apttus and Citrix. What made you move to OutSystems?

The intersection of the creative and technical challenges in software development has been something I’ve been fascinated with for most of my life, beginning with writing software when I was 12 years old. Not only is it a personal interest and passion of mine, the work is critical as software delivers the digital experience that is becoming ubiquitous in the world.

Creating technology that benefits the most people and makes the world a better place requires putting this power in the hands of a growing number of people through the democratisation of software development. In my past role, I was focused on building teams, and helping everyone in product and engineering deliver amazing products rapidly through rapid transformation initiatives with a heavy focus on cloud technologies.

At OutSystems, I lead R&D for our low-code application development platform. Our platform is used in the development and delivery of complete applications, with a visual development interface at the core of the developer experience. Low-code is a way to deliver applications with modern user interfaces with minimal coding.

With over 17 billion smart devices capable of running applications and only 25 million people writing applications for those devices, a new paradigm is needed for software development to fill the gap in delivering digital solutions. My personal journey is to do that by making software development accessible to everyone.

You once worked as a Cloud Strategist and Architect at Microsoft. What specific lessons learned there are you able to apply in your tech career? What was the most interesting part of working at Microsoft?

Seeing the large impact that technology transformations could have on companies, and via the services these companies provide, on the world at large in a very short amount of time. Cloud native technologies, DevOps toolchains, and internet scale architectures – all are extremely powerful. But it was painfully obvious how difficult it was to successfully deliver digital transformations on time using these diverse technologies.

I had the benefit of working with some of the best technology companies in and outside of Silicon Valley, seeing this play out over and over again. We live in a world of incredible technological advancements but a world that increases in complexity each day. With this increase in technology, complexity, and power, we create more silos in specialisations for people necessary to deliver integrated solutions combining cloud and software development. When you take this trajectory to its logical conclusion, it creates a small set of people that can realise the benefits of this powerful set of technologies through cloud native software development.

Combine the immense benefit derived from customer software development with the scarcity of talent, and we’re creating a group of haves and have-nots: large tech companies that can hire this scarce, specialised talent and companies that can’t hire this talent but still need the innovation that software development provides. We need a better way.

Could you talk to us about Project Neo? Aside from the fully cloud-based environment, what’s the difference between Project Neo and OutSystems 11?

Project Neo is the code name for our next-generation platform, which helps developers create cloud applications and enable enterprises to compete in a cloud-first environment. We built this platform from the ground up to address the most critical issues that organisations face today: the software development skills shortages, the need for companies to innovate through software development, and the need to deliver software quickly with low risk.

Another important challenge we’re solving with Project Neo is the problem of software disintegration. Software starts becoming outdated as soon as it is written, requiring constant patching, updating, and security fixes. With Project Neo, OutSystems seeks to rescue developers from that undifferentiated burden so they can focus on innovation and creativity without worrying about constantly doing mundane maintenance work.

The industry is facing a skills shortage; there are an estimated 17 billion smart devices in use today, and only 25 million developers around to create and maintain the applications that power them. Project Neo allows any development team to build apps at internet scale, helping to bridge the gap between developer capacity and industry need. 

Project Neo will exist alongside OutSystems 11, our low-code application development platform.

What do you think are OutSystems’ top technology challenges in this age of COVID-19?

We have the same challenge as other companies: hiring talented people, and providing an environment with meaningful work that allows people to unleash their passion. Even before the pandemic, a widespread developer shortage was a problem in industry, and the rapid adoption of digital initiatives has only highlighted the need to nurture new talent. As an industry, it is important to entice new hires from a tertiary level, through software courses and programmes with a focus on creating opportunities for those from communities underrepresented in tech and software development. We need diversity in the tech community, the same diversity that exists in people using technology should be represented in the people building technology solutions.

Modern application development platforms can help mitigate the skills gap by lowering the entry barrier, incorporating reusable components, and eliminating the need for a knowledge of hand coding. This would enable people of more diverse backgrounds than ever before to become developers. With the push to digital transformation in recent years and directly from COVID, every company is now essentially a software development company, requiring more developers by the day and in locations all over the world, making no- and low-code platforms attractive solutions for organisations who want to remain competitive.

Low-code development is here to stay, and will inevitably evolve. From an R&D perspective, what are some of the most exciting developments in the OutSystems labs at the moment?

Gartner predicted in 2019 that by 2024, an estimated 65% of application development activity will be dependent on low-code application development. To keep up with the rising adoption of modern application development platforms, OutSystems announced the addition of an R&D centre in Bangalore, India.

In addition, as I noted earlier, OutSystems introduced Project Neo, a cloud-based development platform. We’re doing some very interesting work with Project Neo, creating an evergreen cloud application development platform based on open systems architecture. This combines some SaaS attributes where services are continuously updated, and an open development environment capable of integrating with the customer’s existing development toolchain.

How do you envision modern software development platforms will evolve within the next three to five years? How has the increased need for digital transformation affected today’s software development landscape?

With tech giants winning the race for scarce developer talent, businesses outside of the tech elite will embrace new ways to stay innovative and competitive with their own teams now and over the course of the years ahead.

Businesses are waking up to the realisation that they need technology that works hard to allow their development teams to focus on creativity and innovation, instead of the tedious aspects of software development. This includes technology that:

  • Handles the critical but undifferentiated tasks of development;
  • Constantly updates with the latest cloud technologies; and
  • Automatically scales and leverages containers and Kubernetes, to make sure that development teams:
    • Deliver world-class application architectures; and
    • Move fast to meet changing business needs, with low risk.

All this while being unencumbered from toil, unnecessary maintenance, and technical debt drudgery.

Developers are weary of facing the cognitive load day in and day out of too complex technology stacks, of ever increasing maintenance work, and of failed traditional development projects. They want to deliver value; they want to deliver beautiful, useful software; they want to make a difference, and enjoy doing it. They want control but they don’t want the unnecessary complexity.

Software development platforms will emerge, solve these problems, and give developers back control of this creative aspect while reducing risk, increasing speed of delivery, and handling the security and operational tasks of software maintenance. Instead of an increasing set of disparate, complex software development tools, these more modern application development platforms will rise to give developers and organisations the power to innovate through modern, cloud native, internet-scale software development without the unnecessary cost, complexity, and risk. Software development will change from focusing on the difficult, complex, technical “how” to the creative and innovative “what.”