Embracing long-term, remote development in the cloud
- By Eric Beane
- Jun 25, 2020
In light of the COVID-19 pandemic, organizations have had to adapt to a new reality that poses an entirely different challenge for traditional IT managers – how to sustain team productivity and security from home.
Most agencies have triaged short-term solutions, but even as the world attempts to journey out of a COVID-19 shutdown, it’s highly likely that remote working will be the norm for many people for quite some time. So how can agencies establish processes and systems that can support a more productive, more secure work-from-home reality?
For software developers, especially those supporting agency missions, remote work can be a challenge. To be productive, they need unfettered access to their development labs and associated tools. Short-term solutions like local development on a laptop with artifacts stored in a shared code repository generally don’t scale as developers will require access to greater resources and testing environments.
Today, there’s no need to limit developers to the modest capabilities of a laptop or to burden already-swamped IT teams with providing secure, reliable access to on-premises development environments. Leveraging cloud-based platforms for remote development is a practical, secure, compliant and scalable way forward. Shifting software development environments to the cloud can provide dev teams with remote native access to a wealth of resources without compromising security or compliance. In fact, by taking developer teams totally virtual through the cloud, agencies may find they can elevate their entire process to a new level.
However, before agencies start down that road, they should consider these issues to avoid replacing one set of problems with another:
Account governance. Instead of seeing the cloud as monolithic, it’s better to adopt a multiaccount strategy when designing an account structure. Keeping accounts small and focused makes financial management and access control easier to manage at scale. In leveraging the full power of the cloud for developers, it’s vital to define some roles and policies to ensure the agency’s security posture is maintained. It’s helpful to think of these policies as guardrails, rather than speed bumps, keeping data and resources safe, without slowing down development.
Common services. Different development teams use many of the same tools, particularly when it comes to code repositories, collaboration suites or productivity tools. Rather than each development team standing up its own local instance of these tools, consider deploying them in a central location where teams can share them. Just be sure to architect with role-based access in mind to ensure that people can only access the data relevant to their project.
Low-to-high development. By using the cloud for remote development, unclassified, commercial regions can be leveraged to continue developing tools or applications ultimately destined for a secure, air-gapped region. To get the most out of a remote workforce working on low-to-high development, incorporate a full-scale air-gapped region emulation and testing platform into the development environment. This ensures that the artifacts developers produce will be fully functional when introduced to the air-gapped environment once they get back to the office.
Taking each of these points into account when planning a development strategy will accelerate an agency’s return to full productivity, equipping remote developers with unfettered access to a secure, scalable cloud-based development environment. In fact, with the cloud opening up a whole new level of possibilities, the development team will not only embrace the “new normal” of remote working in the short term, but also well into the future.
Eric Beane is the technical director and lead solutions architect at Applied Insight, a federal government solutions provider, backed by The Acacia Group.