What is the best way to build software?

What is the best way to build software?

Ask a dozen software engineers what the best way to build software is and you can expect to get 20 different answers. Because here’s the thing: there is no ‘one best way’. What works for one company might be a disaster for another.

That said, at Thoughtworks, we do believe it’s possible to codify reasonable approaches to software development. We call these ideas our sensible defaults.

We believe they’re sensible because we have extensive experience of using these principles and practices on the work we do. And we’ve seen the benefits of using them on that work.

We call them defaults because we think they should be the starting point for how we intend to work. That isn’t to say we will always do this. 

For instance, our default position would be to program in pairs because we know the value it brings. But we also recognize that, in some circumstances, it may not be appropriate. By being a sensible default, pair programming isn’t a carved-in-stone edict for our teams: it’s our initial assumption about what will be most effective.

Our newly published Sensible Defaults Playbook covers a number of principles, spanning practices from quality analysis to project management and security. We don’t think it will be the final word on software engineering best practice, but we do think it’s a good place to start.

Sensible defaults can reduce friction and provide simplicity anywhere one can think to apply them. They are the bedrock of minimalist practice and a quiet mind.


🤔 Rethinking the management of digital assets

In an always-on world, traditional approaches to maintaining software just don’t cut it. In this series, we explore a new approach to continuous optimization of digital assets, based on our decades of experience in software engineering, which is enabling enterprises to maximize the value of their digital estate. Here is your recommended essential reading list: 

Five strategies to maximize the value of your digital assets

Say goodbye to break-and-fix patches

Continuous discovery for managed services: Evolve and transform your digital assets


🔐 Anonymesh: How can it help us ensure data privacy?

Quote by Erin Nicholson, Global Head of Privacy, Thoughtworks

Privacy concerns are nothing new when it comes to storing and sharing personal data. But in an increasingly complex enterprise environment, where different partners have different levels of trust and access requirements, the issue of sharing data is a perennial concern. That’s where, anonymesh comes in: it decentralized approach to privacy that facilitates secure information sharing among organizations. 

Read the full article here.


▶️ Pioneering smart logistics through infrastructure optimization and engineering effectiveness

idealworks has a mission to streamline logistics processes with reliable software and hardware. At the heart of its efforts is the deployment of autonomous robots to aid logistics. It worked with Thoughtworks to tackle increasing cloud costs and minimize bottlenecks around developer productivity and efficiency. Discover this client story here.


🎙️ Continuous delivery vs. continuous deployment: What should be the default?

Do you need a manual gate before your code is deployed into production? The answer, like most things, is context-specific. But in this podcast, we explore the merits of continuous delivery and continuous deployment — and look at the constantly evolving methods of software delivery that are enabling some organizations increase speed to market without compromising reliability or stability. Listen to the podcast episode here.


🔎 Discover what’s next in tech 

Never before has enterprise technology undergone such rapid and profound change as it’s experiencing with the advent of generative AI. For today’s leaders, this technology presents unprecedented opportunities — and risks — for your organizations. 

To help you maximize this opportunity, we are introducing Tech Horizons: executive webinar series, supported by our partners Amazon Web Services (AWS), Google Cloud and Microsoft. Join experts from NVIDIA, Citi Group, Thoughtworks, among others, to explore and understand the latest trends and strategies across AI, data, application and infrastructure management, and IT modernization. 

🗓️ Space is limited, reserve your spot now.


We hope you enjoyed this issue of Tech to know. Click here to read past editions and subscribe for more.

David Michael Robichaud

Software & Professional Services Sales Executive – AI, ML, Generative AI, IoT, MES, ERP, Analytics

1d

Here’s the thing: there is no ‘one best way’. But we do believe it’s possible to codify reasonable approaches to hashtag #SoftwareDevelopment. We call these ideas our sensible defaults. Explore this and more in our latest edition of Tech to know. Read it now ⬇

Like
Reply

How do you tell this CEOs as a CTO?

Like
Reply
Raffaella Aleotti

CoFounder - Team Leader - Senior Software Engineer - Ecommerce Specialist & Cloud Architect @SMC Consulting

3w

I agree 100% on the fact that each developer and/or swd house will give a different answer, very much linked to the personalities of the developers (there will be those who prefer to work alone rather than in a team). However, there are software engineering guidelines that are common to all development processes, and which can define a basis for all.

Saurabh Sharma

Principal Engineer/ AWS Solution Architect Associate @IBM UK | GenAI-watsonx | TDD | Fullstack microservices architecture | Helping enterprises with Digital Transformation and GenAI Adoption.

3w

Well-outlined conversation around Continuous Delivery Vs Continuous Delivery

To view or add a comment, sign in

Insights from the community

Others also viewed

Explore topics