Tag: no-code/low-code

  • The Future of Low-Code is Open

    The Future of Low-Code is Open

    The low-code market is seeing meteoric rise across the world, as companies try to keep up with digitization demands and shrinking IT budgets. Even as we witness increasing low-code adoption among professional as well as citizen developers, an intriguing question comes to mind – What lies ahead for low-code, and could it ever become a mainstream approach for modern development teams?

    The answer may well be an open source, low-code platform that offers high productivity, while supporting seamless integration with the overall fabric of modern software development practices within an enterprise.

    It’s feasible to assume that low-code will evolve to become open low-code, resulting in greater innovation and agility.

    To further understand what this means, let’s dive deeper. What are open systems?

    According to Wikipedia, open systems are computer systems that provide some combination of interoperability, portability and open software standards.

    Over the years, the software industry has seen great benefits from designing, implementing and consuming open systems. TCP/IP protocol standards, UNIX systems, Web browsers, REST APIs – all of these are shining examples of open standards that went on to become highly successful and widely adopted. By remaining open, they enabled higher interoperability, streamlined development and fostered rapid innovation.

    Low-code is now at a critical stage in its adoption curve. For the last few years, we have seen citizen developers successfully execute shadow IT with low-code and churn out applications at a breathtaking pace. Today, low-code platforms are hardened for enterprise use, are programmed to understand the scalability and security needs of a complex application and have integration capabilities mature enough to seamlessly fit in with existing tools and technologies. As a result, we are now seeing greater adoption of low-code within the professional development community, covering a diverse set of use cases from simple dashboards to complex applications. The natural next evolution of low-code is that it becomes mainstream within enterprise IT, and is used to build mission-critical applications and systems. So, how does this next phase play out for application development?

    The Case For an Open Low-Code Platform

    The approaches and techniques of modern software development teams has changed dramatically to meet the demands of modern, software-enabled business. Developer velocity and organizational agility have become key benchmarks for high performing software development teams, as those metrics have a direct correlation with software excellence and superior business performance. According to a research report by McKinsey, teams that belong to the top quartile with regards to developer velocity score have 60% higher total shareholder returns and 20% higher operating margins. Such teams can experiment faster and release code to production without delays.

    As application teams continue to embrace low-code for mainstream development, it is vital that low-code platforms support developers so they are encouraged to employ modern application development and delivery best practices. Low-code should introduce minimal disruptions to a developer’s working practices and workflow. Also, it is important that low-code can integrate seamlessly with the fabric of the overall enterprise application architecture. This can happen if a low code-platform is open standards-based and flexible so that the rest of the enterprise application infrastructure can coexist with it.

    What Makes a Low-Code Platform Open?

    Developer-Centric Features

    Developers like control, flexibility and a unified experience. They find comfort in sticking to their preferred languages, tools and application development and delivery workflows. A low-code platform that offers productivity with equal flexibility, with a focus on building robust enterprise architecture, is bound to be the future of application development. Platforms should focus on providing a unified developer experience across concept, design, integration, development and deployment stages of the app life cycle, employing a technology stack that is modern, best-of-breed and cloud-native. It’s equally important to provide a way for developers to easily bring any external innovations into the low-code platform.

    Visualization, Customization and Ownership

    Many low-code platforms do not generate 100% of an application’s code. Also, most of the code generated by proprietary platforms is also proprietary, and quite often remains hidden and not easily accessible or extensible. A platform that generates open standards-based, real code is a great asset, especially for professional developers building complex applications that require extensive customization and deep integration with enterprise tooling (security, testing, debugging, integration etc.). The code generated should be based on developer-friendly, best-of-breed application stacks and standard design patterns. This way, application teams will have complete familiarity with and understanding of the code. Enabling full export of the code allows teams to own the code created by the platform.

    Flexible Application Architecture

    The application architecture should be loosely coupled, supporting microservices and micro front ends that can be independently built, deployed and scaled. This way, architecture can support cloud-native application development easily. Also, all other aspects of the application life cycle should allow for plug-and-play capability. This includes, but is not limited to, plugging in custom UI components (widgets, templates), custom security providers, custom back end code, logging frameworks, event driven systems, etc. A plug-and-play model ensures that development teams can integrate custom providers that are fine-tuned for the enterprise.

    Modern Development Best Practices

    Modern application development practices have evolved to allow teams to experiment faster and release code to production at a never-seen-before pace. Optimizations in performance and scalability have resulted in applications that can support millions of end users. As developers warm up to low-code, the platforms should align with and implement all modern development practices while building applications. The idea is to minimize friction in a developer’s journey towards low-code, so that they continue to leverage the same design principles, application tooling and enterprise integrations as they do in the complex programming world.

    Infrastructure-as-Code (IaC)

    Developers need a way to continuously deploy software so there is always a version of the application ready for production. Low-code platforms should support an IaC option, so code generated is always deployable seamlessly on the developer’s infrastructure of choice. Platform should integrate to build, test and release systems (version control systems, CI/CD, artifact repos, container image repos, Kubernetes clusters and public or private cloud instances, for example). This way, artifacts built by low-code are continuously integrated and deployed to the enterprise’s operational systems.

    Low-code is at an inflection point within enterprises, as it becomes the platform of choice for digital transformation and application modernization. This is the opportunity for low-code platforms to become a key ingredient of an enterprise application architecture. An open low-code approach will allow application development teams to benefit from the underlying best practices prevalent within the organization.

    Low-code is not merely a productivity tool; it has the potential to be a technological and cultural catalyst that drives enterprise innovation and business agility.

  • Will App Dev Become a Normal Competency?

    Will App Dev Become a Normal Competency?

    With a shortage of available developers, companies are considering low-code methods to meet massive application development needs. As a result, by 2024, citizen developers will be responsible for 65% of applications, Gartner predicted. So, if technical ability rises across the board, will application development become an expected skill set for tomorrow’s digital workers? And if so, when?

    “Application development will become a normal competency,” said John Bratincevic, senior analyst, Forrester. Bratincevic recently gave a talk at the Rethinking “How” into “Who” with Low-Code event, presented by TrackVia.

    I asked Bratincevic to dive deeper into how application development is becoming democratized. In short, the low-code movement has permanently altered expectations around who can be involved in application development. To him and others within the industry, leveling up with citizen development knowledge could be vital to retaining a competitive advantage in the future digital-native workplace.

    The Undigital Condition

    As more and more companies digitally transform, they are evolving into software companies. In this new paradigm, “software is an expression of the business,” says Bratincevic. Yet, most organizations have not entirely digitally transformed. According to Forrester’s Q1 2020 Global Digital Process Automation Survey, 76% of companies still rely on paper-based processes, and 94% use Excel or email-based processes.

    Unfortunately, developer talent is too few and far between to rectify this “undigital condition,” and existing IT teams are struggling to keep pace with demands for more software-based processes. Too often, teams are told to get in line and wait for experts to develop software when they can, said Bratincevic. This gap results in a less adaptive structure that limits new ideas.

    “All organizations are probably, to some degree, adaptive, but their improvement and adaptation are typically only periodic and conducted by specialists,” wrote Mike Rother, Toyota Kata. “In other words, such organizations are not, by their nature, adaptive.”

    A New Generation of Citizen Developers

    The old model is not realistic anymore, said Bratincevic. Instead, a new generation of citizen developers could use no-code and low-code platforms to program operational tasks themselves. These tools use visual, declarative techniques instead of programming and are “empowering employees outside of IT to deliver apps,” Bratincevic said.

    So what is the demographic behind citizen development? Reports show that younger, digital-native employees are more likely to use low-code platforms. According to the TrackVia report The Next Generation Worker: The Citizen Developer, 50% of citizen developers are 18 to 29 years old. The study also found that citizen developers are 13% more likely to expect promotions, correlating citizen development experience to career advancement.

    In this projected economy, “digital elites” seem well-positioned to progress, whereas others are in dire straits. “Knowledge workers with simpler, more focused roles (e.g., a “coordinator”) and without digital skills are at risk,” said Bratincevic. Thankfully, low-code could offer a practical way to enter the tech field and increase job security.

    Leveling Up From Productivity Tools

    Today’s average worker is quite familiar with personal productivity apps such as email, social communications, calculations and other consumer technologies. Just as productivity tools have become commonplace, Bratincevic predicts that application development will become a standard skill set in the future.

    Other IT leaders agree that coding literacy will soon become ubiquitous. Apple CEO Tim Cook, for example, recently emphasized to the U.S. president that “we believe strongly that it should be a requirement in the United States for every kid to have coding [education] before they graduate from K–12 and become somewhat proficient at it.”

    Application development may become a typical proficiency; however, the exact nature of software development is up for debate — especially as development environments add more abstraction layers to the lower stack that only involve programming languages indirectly. For example, Bratincevic describes how those learning to code often use a service like code.org, which involves low-code tooling and games to help educate students. “I see the same pattern for the adult professionals in the workforce,” he said.

    Future application development may not even resemble programming in the traditional sense. “Once ‘development’ on these kinds of tools becomes ubiquitous, we may not even call it application development anymore,” Bratincevic said. “It will just be — work.”

    Goals for Citizen Developer Programs

    According to an Outsystems report, 20% of companies adopted low-code to enable citizen developers to construct applications. “One of the main reasons firms are buying low-code is to enable non-IT folks to develop,” noted Bratincevic. “I routinely get inquiries from enterprises who are looking to accomplish this very thing, at scale in their organizations.” In particular, he notes apps of substance being created within health care, vehicle manufacturing, oil and gas and insurance industries.

    It appears more and more organizations are sanctioning a new wave of citizen developers. So what goals should these new citizen development programs aim to achieve? Bratincevic shared the following benchmarks:

    • Digitize. Everything. Always: Foster a digital problem-solving culture and develop a digital workforce.
    • Balance autonomy and control: Citizen developers shouldn’t have to ask permission to make a spreadsheet. Yet, guardrails are necessary for more far-reaching programs.
    • Take charge as privateers: He recommends organizations start by adopting an autonomous, business-led team, which he calls a Privateer model.

    Low-code could also help bring shadowy, rogue IT to light and rehabilitate it in a sanctioned way.

    The Era of Low-Code

    In 2021, the low-code market is estimated at $13.8 billion, said Gartner. SD Times even coined 2021 the “year of low-code.” But, since the citizen developer movement has permanently raised the bar, I would edit this statement to say we have entered the era of low-code.

    For more information and case studies on citizen development, I recommend watching the panel webinar Citizen Developer Movement with Forrester: Rethinking “How” into “Who” with Low-Code. In addition to John Bratincevic, it features Dave Garret, chief strategy and growth officer, PMI, (who I’ve spoken with in the past on How To Foster a Culture of Citizen Developers) and Joshua Yaklin, SVP of operational risk, Stearns Lending.

  • Low-Code Automated Software Testing Drives DevOps

    Low-Code Automated Software Testing Drives DevOps

    The DevOps world has quietly turned its focus to solving an essential challenge: enabling software teams to innovate quickly while meeting high customer expectations for quality. In other words, to build useful things faster with fewer mistakes. This tension has been growing for years, but 2020 added the challenges of remote work and accelerated digital transformation to the continued disruption brought about by cloud, SaaS and DevOps. In 2021, we need a road map for taking test automation to the next level with quality engineering, a discipline that incorporates best practices and data-driven testing into the end-to-end customer experience and drives organizational growth.

    Rethinking the Quality Process for the DevOps Era

    Quality engineering (QE) has traditionally lacked the tools needed to keep pace with digital transformation. Many QE teams struggle with complex, brittle automation frameworks and slow manual testing which create serious bottlenecks to DevOps adoption. While development accelerates, QE is left with disparate or outdated workflows and toolsets.

    Rising to the challenges and opportunities presented by DevOps and digital transformation will require innovation in our approach to quality. More than ever, we need to shift our focus away from quality assurance as a task that you perform late in the software development life cycle (SDLC) in favor of quality engineering practices throughout the entire life cycle. It starts with broad, effective test coverage – beginning when your developer is working on a local branch and continuing until a high-quality customer experience is confirmed in production across the entire surface area of the application – web, API, mobile, email, PDF or otherwise. It also goes deep; you evaluate all aspects of quality, ensuring that you satisfy requirements related to functional correctness, accessibility, performance, user experience and more.

    Low-Code Test Automation Unlocks a Culture of Quality

    With low-code, genuinely effective testing is at the fingertips of every role, from manual testers to developers, automation engineers, product owners and customer support. Requiring all of these roles to develop specialized programming skills is impractical, so low-code tools serve to democratize quality engineering by enabling everyone to participate in authoring tests, updating tests, and gaining insight from test results.

    Low-code testing brings several advantages to quality engineering, particularly in the transition from manual testing to automated testing. While traditionally this process would create major disruptions, low-code platforms are smoothing the way. In their IT Automation predictions for 2021, Gartner expects that by 2024, improvements in automation capabilities will refocus 30% of IT operations efforts from support to continuous engineering. For manual testing teams, that shift would likely trigger talent changes and a long process of pilot projects, retraining, and gradual rollouts. Low-code is key to managing this shift, upskilling workers and ensuring quality throughout.

    Modern Automation Solutions Embrace Rapid Change

    A key challenge with traditional test automation tools is that they were designed for applications that didn’t change frequently and were intended only to validate code. They relied on static selectors to identify page elements. If the selector (say, an ID) changed or objects (the XPath) moved on your webpage, then your tests failed. As more enterprises accelerated development via DevOps, Agile and CI/CD, the burden of test maintenance resulted in the same bottlenecks as manual testing.

    2020 was a breakout year for low-code test automation. New, easy-to-use solutions surpassed the capabilities of legacy frameworks that have dominated the sector. These solutions incorporate machine learning, data analytics and other advanced technologies to greatly reduce the burden of test maintenance and overcome the test rigidity challenges of legacy frameworks.

    With AI and machine learning, test automation solutions are trained by a tester simply navigating their product. As the tester moves through common customer journeys, the solution builds an understanding of each element and its context so that if an element moves or a property changes, tests containing that element are updated without human intervention. This drastically reduces the amount of maintenance required to ensure your tests are current. When tests do need to be updated, low-code models make it easy for anyone to jump in and make the updates. Looking ahead, auto-healing and low-code editing are crucial to supporting quality engineering in high-velocity teams.

    Testing the Entire Customer Experience

    Traditional pass/fail validation stops short of offering real insight into the user journey, a critical step effective quality engineering. The next generation of test automation platforms expands focus from validating code to validating the entire user experience. This starts with broadening testing to cover non-functional requirements, such as application performance, accessibility, and user experience. For example, identifying trends in load time for key pages and monitoring visual changes are done autonomously and essential to managing the customer experience. From there, you can prioritize quality efforts toward the components of your application that are most heavily used or highest risk. This enables you to make data-driven decisions about test coverage — focusing your testing efforts on high-priority pages like the checkout page for an e-commerce site, or high-risk pages such as those with multiple interactive elements that are linked from other pages, such as signup forms.

    But even a fully data-driven testing strategy that only focuses on the app or website UI is unlikely to cover the full end-to-end user journey, resulting in test coverage gaps and potential pain points for customers. For example, a common user journey may include opening an email, clicking on a link, checking a web site, and downloading a PDF. Whereas the limitations of legacy tools relegates testing to the web portion of that journey, modern solutions allow you to validate the entire user or customer experience (CX): receiving and opening an email, clicking on the link, logging into the web site, downloading the PDF and verifying its content. It’s even possible to confirm values in the backend via API – all without writing a line of code. Developing the tools to seamlessly monitor, repair, and manage the expanded CX is central to our innovation and to our customers’ success.

    Quality Engineering as User-Centric as You

    Quality is no longer an afterthought or just a box to check before deployment; it’s an essential part of the user experience, and therefore an essential part of maintaining a competitive advantage in every industry that uses software to serve customers. Test automation is critical for high-velocity teams racing to innovate faster, shift to DevOps, and build quality products while working remotely. Thankfully, a growing number of quality assurance teams are getting a seat at the table as DevOps is implemented, elevating the profile of quality as a strategy and growing demand for test automation solutions that can keep pace with the demands of DevOps.

    In response to this demand, a new generation of intelligent test automation solutions is enabling teams to rise to the challenge by embracing low-code and machine learning to maintain quality. To build a culture of quality engineering in this environment, your team needs test automation solutions that are as user-centric as you are: solutions that provide coverage across the entire user journey. Solutions that not only verify functional correctness, but provide rich insight into all aspects of quality and enable continuous improvement. Perhaps most importantly, you need solutions that enable everyone on the team to participate in quality. This ensures that the entire SDLC actively participates in building user-friendly products that continue to set the standard for quality at the speed of DevOps.

  • Low-Code and DevOps: Friends or Foes?

    Low-Code and DevOps: Friends or Foes?

    What does low-code mean, and who is it really for?

    Over the last few years, I’ve seen many articles associating “low-code” with “citizen developers” or with people who don’t have deep development skills. Users can arrange visual elements, or fill in forms with key information and publish the result as an application.

    But tools for citizen developers are only one part of the low-code story. There is also a growing number of tools for professional developers, and I want to talk about those, too.

    Both citizen developers and professional developers have a role to play in application development and automation projects, and low-code has something to offer both of them.

    Low-code is Not a Market, it’s an Approach

    Low-code does mean providing visual and graphical tools and simple frameworks that mask more complex coded operations, so the application designer does not have to directly touch the code that performs desired operations. These apps are naturally limited, as the resulting application can’t be highly customized if you can’t touch the code.

    With these kinds of visual tools, anyone can create a simple application within the limits of the tool. But when we pull back and look at what is needed to create larger, more complex applications – ones that need to communicate with other enterprise systems, or need extensive customization, or cross organizational boundaries, or need to pay attention to governance requirements, for example – the visual-only approach is frequently insufficient. In complex cases, developer expertise is often needed, and developers have to get “under the hood” to tinker with code.

    There is no “low-code market.” We are bringing tools to people who need them to develop specific projects. A comprehensive low-code approach to application development and automation means offering both visual programming and coding capability. For usability reasons, these tools are clearly separated and presented to the development team in a way that allows citizen developers to work on certain elements and developers to work on others, all on the same platform.

    We know that it’s possible to serve professional developers with low-code, too. A low-code approach also includes drag-and-drop tools that developers can use – for example, to develop APIs, or to integrate the application with other systems, or to customize front-end interfaces. Of course, when code is required, developers should be able to use their own tools and frameworks and not be limited by low-code tools. Platforms that offer a hybrid approach are likely to be most useful to mixed-skills development teams.

    The Hybrid Approach

    Strictly low-code tools can serve simple automation use cases. More broadly, automation platforms offer a hybrid of low-code and coding capabilities for more complex automation use cases.

    For critical enterprise applications, both business and developer inputs are usually needed. Having tools for both of them means not leaving anyone out.

    Low-code tools will continue to become more mainstream. Low-code is not a fad or a passing trend, but a quiet revolution that will see greater incorporation into more business tools.

    Here Come the Digital Natives!

    More vendors are offering low-code tools for digital process automation, business intelligence, robotic process automation, identity management and data integration, to name just a few.

    As automation platforms and other low-code tools mature, a greater number of people are getting used to working with them. Developers are less hesitant about incorporating non-developers into their teams, as everyone gains a better understanding of the benefits of these platforms.

    The younger generations entering the workplace today are digital natives. They are fearless about diving into technology and working hands-on. So, these low-code tools are ready for them, and they are ready to put them to work.

    Low-code is breaking down technical barriers to work in the automation space, making smooth collaboration between business and development easier.

    Low-Code Can Be a Double-Edged Sword

    Automation and development teams are also becoming more aware of vulnerabilities and compliance issues as citizen developers roll up their sleeves and join the technical team.

    Low-code tools are a double-edged sword. They facilitate teamwork, but issues with security and data governance may not be top-of-mind for non-developers. If you have a big team working on automation and/or application development and delivery, the need to build in governance becomes even more important.

    Using a shared platform will help manage and mitigate these issues with security and governance. This will become even easier as the platform tools evolve and mature, so DevOps teams can use them to help mitigate some of these issues.

    Does Low-Code Have a Place in DevOps?

    We are definitely seeing the impact of low-code on development environments and DevOps. Remember, low-code started with small applications, and while DevOps-style teamwork and workflows may not be needed there, as the use of low-code platforms becomes the norm for critical enterprise projects, DevOps will be a necessary part of the mix. This is where low-code is having a more obvious impact; Agile methodologies using low code platforms for iteration, for continuous improvement and for continuous delivery. These applications aren’t one-and-done. They need to be maintained, improved and delivered, again and again.

    Low code isn’t going away. On the contrary – it’s going everywhere.

  • Applause Automates App Testing via SaaS Platform

    Applause Automates App Testing via SaaS Platform

    Applause today unfurled a software-as-a-service (SaaS) platform that makes it easier to automatically create test automation scripts without having to write code.

    At the same time, the company is adding support for an application programming interface (API) through which DevOps teams can send new features to be tested by the Applause platform.

    Both offerings are now being included with a rebranded Product Excellence Platform (PEP) offering, a suite of tools and platform through which Applause is making its portfolio of offerings more accessible.

    Rob Mason, Applause CTO, said the Applause Codeless Automation (ACA) platform makes it possible for testers to record a series of test case scenarios using a SaaS platform that translates those sessions into an automation script without anyone having to write any code. The current offering supports Android and Apple iOS applications with support for web applications planned, Mason said.

    An Applause In-Sprint Testing capability, meanwhile, makes the testing process more iterative using a bi-directional API that can be plugged into any software development life cycle (SDLC) process, Mason said. That bi-directional capability makes it possible to embed the feedback from the testing process into any bug tracking system implemented by an application development team, said Mason.

    Mason said that capability is critical, because it enables DevOps teams to identify issues earlier, thereby avoiding late-stage bug fixes that are more costly to fix. It also provides the added benefit of making it easier for developers to address issues in the moment applications are being written, versus days or weeks later when the context around that issue has long since been lost, Mason added. The SaaS platform provide developers with a just-in-time testing capability, Mason said.

    Ultimately, Mason said the goal is to make it simpler for a wider range of individuals to participate in application testing by making it easier to reuse tests. In addition, he said, it will allow subject matter experts to record tests that can be turned into test scripts on their behalf. That approach will enable organizations to push testing further left, beyond the developers that originally created an application, to include the owners of that application, Mason added.

    The rate at which applications are being built to drive digital business transformation initiatives is increasing, and makes testing more problematic. Automation is the only way to close the gap between the number of application testers an organization can dedicate and all the applications being developed. The automated approach not only reduces the time and effort required to create a test, it also makes it easier to reuse tests across different application use cases.

    Ultimately, it’s only a matter of time before machine learning (ML) algorithms and other AI capabilities play a larger role in application testing. The challenge will be finding exactly where the interface between humans and machines should lie in the context of application testing.

    In the meantime, the more automated testing becomes, the more widely it will be conducted. The results of those tests may not always be welcome news, but the issues they raise are always better addressed sooner than later.

  • Mabl Adds Beta of Desktop Continuous Testing Tool

    Mabl Adds Beta of Desktop Continuous Testing Tool

    Mabl today announced availability of a beta version of a desktop tool for creating tests that can be applied to browsers and application programming interfaces (APIs) using a low-code tool.

    Dan Belcher, co-founder of Mabl, said the goal is to make it simpler to streamline testing processes as responsibility for application quality assurance (QA) continues to shift left within the context of a DevOps workflow.

    Mabl provides a low-code tool for testing desktop and mobile browser applications, alongside the APIs they invoke, using an Electron tool that generates tests in a way that eliminates the need to write scripts. Previously available only via a software-as-a-service (SaaS) platform, Belcher said the desktop platform will make it simpler for developers to test code as they develop it on a local machine.

    Developers using the desktop tool can now also manage and run tests instantly via command line interface, versus having to completely exit from a project to invoke a separate testing tool, Belcher said.

    The Mabl testing tools are already integrated with multiple continuous integration/continuous delivery (CI/CD) platforms, such as Bitbucket and Bamboo, as well as the GitHub repository.

    In the longer term, Belcher said it is clear organizations will need to involve more developers in QA testing, as the rate at which applications are being built and deployed continues to increase. Testing teams, on their own, can no longer keep pace with the rate of change, Belcher noted.

    The challenge is achieving that goal in a way that creates the least amount of friction possible, Belcher added. The Mabl platform and desktop application make it feasible for developers to test both web and mobile applications without taking too much time away from developing application code, said Belcher.

    Testing has become a major DevOps issue because, as developers assume more responsibility for applications after they have been deployed in a production environment, they naturally want to vet applications more thoroughly. Issues that arise after an application is deployed simply result in less time available to write new code. There will always be issues that need to be addressed, but the more of them that are resolved as part of a QA process integrated within a DevOps workflow, the more productive an application development team will be.

    Unfortunately, testing is often given short shrift; it primarily occurs at the back end of the application development life cycle. Developers are typically behind schedule, so there is a natural tendency to reduce the amount of time allocated to testing in the hope of making an application delivery deadline. The vicious cycle that ensues is that, inevitably, there are more bugs to fix after an application has been deployed, simply because not enough testing was done during the original development cycle.

    Of course, some development teams have become conditioned to fixing bugs as part of an agile development process that, too often, encourages them to push known issues off to the next sprint. The trouble is, in the absence of continuous testing, it’s not long before all those known bugs start to pile up. It’s not uncommon for applications to be riddled with bugs that development teams – with mixed success – attempt to address all at once. The earlier those issues are addressed, the less stress there will be later for all concerned.

  • Top 4 Challenges for Developer Teams in 2021

    Top 4 Challenges for Developer Teams in 2021

    As remote work continues into 2021, developer teams are still navigating the new landscape for working across distributed teams and how this new way of working affects product delivery. In particular, there are several key challenges that every developer must face this year, including adapting to new tools and workflows internally, balancing the prioritization of keep-the-lights-on initiatives with product initiatives, and understanding how to address emerging customer challenges.

    As developer teams are responsible for keeping both internal systems healthy and maintaining service uptime for customers, addressing these issues and implementing the strategies below will help ensure better delivery, easier deployment of application and software solutions and improved internal communication processes.

    #1 Get Better at Digital Experience Monitoring

    For businesses to survive in this current environment, neglecting to monitor a user’s digital experience across their life cycle can mean losing business to a competitor. At a bare minimum, developer teams must ensure that their application’s basic infrastructure is sound. This means monitoring key metrics like CPU load, memory load, memory used, disk space, queue lengths, API uptime or error codes returned.

    For a fuller user experience, developer teams should also monitor things like page or app load times, drop-off points in an app and crash logs. The third level of digital experience monitoring is keeping tabs on what your users are doing, such as skipping the onboarding flow, inviting friends to your app, posting content or how much total time they’re spending within the app. Robust digital experience monitoring will ensure that you are constantly measuring the quality of your users’ experience and making improvements along the way.

    #2 Expand Where and How You Gather User Feedback

    Beyond initial user monitoring, teams should continuously collect feedback to improve features and fix issues that might not have been discovered during testing. One natural way to do this is to aggregate user reviews and support questions to find common themes that may help product teams prioritize future releases. It is also critical to think outside of the box in terms of where and how feedback is collected. Teams can also collect feedback in other ways, such as conducting data analysis and user research sessions or having direct conversations with customers. Giving key beta users early access to a new release can also help developer teams understand whether their application is meeting users’ needs, and whether it is intuitive to use.

    Ultimately, by engaging with customers in extensive and real conversations, teams may learn where there are disconnects between users and the products, and what they can do to bridge this gap. Once the information is collected, teams should then prioritize what needs to be done first by ranking requests by frequency received, financial value of fixing the issue, strategic importance to the overall organization and engineering effort.

    #3 Prioritize Low-Code and Customer Self-Service Models

    Removing barriers to entry for customers is especially critical right now, as developers consider changing user needs, tighter budgets and fewer personnel to implement new code. Customers just don’t have time for entire enterprise sales and onboarding cycles to implement new solutions, so requiring less code is a great way to introduce a more self-service model. This model is also great for non-developers to implement and ensures that customers (whether fellow developers or even someone on a marketing operations or web team) can easily integrate new tools and software into their existing solutions. This is not only critical for those without a more technical background, but also valuable for time-strapped product teams who want to buy, versus build, a new feature.

    #4 Codify Hiring to Help Developer Teams Succeed

    During the pandemic, both large companies and small startups have pivoted significantly in the way they recruit and onboard engineering, DevOps and technical roles. Leaders of developer teams need to codify their hiring plans and put in place remote work strategies, especially with the hybrid working model that combines remote personnel with in-office staff.

    When hiring for remote teams, consider where individuals are located for both development and customer support purposes. Once you determine these core hubs, there should be guidelines in place to reduce the need for team members to work across major time zone differences. This can mean having a core software team in a centralized region that also overlaps with a major customer base, or having an engineering team located in a similar time zone to the design team for easier communication.

    Overall, the needs of each developer team will differ depending on the size of the company and the industry it serves. That’s why it’s critically important to adapt your systems and infrastructure accordingly. Furthermore, listening to and processing user feedback, building products that meet ever-changing customer demands and continuing to focus on team communications will help ensure long-term success in a post-pandemic world.

  • No-Code/Low-Code: Empowering Collaboration

    No-Code/Low-Code: Empowering Collaboration

    No-code/low-code will create seamless integration between cloud platforms, tools and utilities

    Recent developments have created a massive shift to working remotely, which, according to a recent Gartner survey, is not a temporary move. The survey indicates that 74% of CFOs plan to continue some form of permanent remote working. This in turn paves the way to even greater adoption of cloud-based applications and software to enable businesses to stay connected, collaborative and productive.

    While the ongoing pandemic has helped to underscore the importance of cloud-based applications, it has also revealed that these systems don’t always work well together—an oddity, considering the promises of seamless collaboration, transparency and productivity of cloud platforms. But the reality is that while many cloud solutions claim to be “platforms,” they are not. There are, in fact, only a handful of platform companies, including Salesforce, Adobe, SAP and Microsoft. The rest are tools and utilities that should snap into a larger ecosystem.

    Many organizations think they can implement disparate cloud tools and seamlessly switch them on like a light bulb. But that’s just not the case. This is why no-code/low-code will both end the “cloud platform masquerade” and create seamless integration between cloud platforms, tools and utilities.

    The Rise of No-Code/Low-Code

    No-code solutions typically allow non-technical developers, such as business users, to build or modify apps without having to know any programming languages. Low-code applications, for their part, are enterprise-grade systems built by professional developers that offer drag-and-drop components and require little or no hand-coding.

    The beauty of no-code/low-code applications is that they do not require an army of expensive IT consultants and systems integrators to get them to speak to each other. Instead, these applications are designed to plug seamlessly into an integration platform as a service (iPaaS), a suite of cloud services that connects various applications, systems and technologies within the cloud. As a result, no-code/low-code cloud apps can easily communicate and share data even when they don’t speak the same language.

    Think of it as Google Translate for cloud software. With iPaaS, you can stitch together disparate systems that don’t even know they’re communicating to work together in one smoothly functioning, integrated process.

    The Benefits of No-Code/Low-Code

    The benefits are clear. Instead of handing over piles of cash to systems integrators, organizations can reinvest that money in their own companies. What’s more, they can gain greater visibility into their data, enabling them to correlate information and create contextual insights around many aspects of their business. Individual departments can interact with and combine various applications on their own, without the aid of IT, to quickly and seamlessly model new business processes. That in itself is transformational because it puts the power back in the hands of the non-technical professionals, who know better than anyone what they need to accomplish.

    Going forward, I believe organizations should demand cloud-based tools and systems that offer a no-code/low-code component. After all, systems that don’t seamlessly integrate with each other pose a clear impediment to success. For instance, something as simple as a sales lead can have 10 different meanings in 10 different Martech systems. In one, a sales lead may be a click, while in another, it may be a personal contact. This kind of confusion can be deadly to your marketing efforts.

    Moving Forward

    Greater visibility and orchestration will be more critical than ever in our post-pandemic world. As organizations are figuring out how to respond to the rapid upheaval caused by COVID-19, embracing no-code/low-code applications presents a vital path for improved collaboration, transparency, efficiency, productivity and decision-making—all critical requirements if organizations are to overcome this period of crisis and succeed in the future.