BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage QCon Software Development Conference Content on InfoQ

  • Sustaining Fast Flow with Socio-Technical Thinking

    To sustain a fast flow of changes over long periods of time, organizations address both the social and technical, socio-technical, aspects of reducing complexity. Examples are incentivising good technical practices to keep code maintainable, architecting systems to minimize dependencies and maximize team motivation, and leveraging platforms to preclude whole categories of infrastructure blockers.

  • Talking Like a Suit - Communicating the Importance of Engineering Work in Business Terms

    This article explores how to construct engineering work as a story, including clearly presenting a problem, offering a solution, and showing the business a path to success that solves their problem and avoids failure. By presenting your case in this way, you significantly increase your chances of getting these engineering problems addressed, while also becoming a better partner for the business.

  • GitHub’s Journey from Monolith to Microservices

    This article explores GitHub's recent journey towards a microservices architecture. It takes a deeper look at GitHub’s historical and current state, goes over some internal and external factors, and discusses practical consideration points in how Github tackled their migration, including key concepts and best practices of implementing microservices architecture.

  • DEI Is Rooted in Justice: Stop Making it about Profit

    Diversity, equity, and inclusion practices exist for the betterment of every single person within a company from the ground floor to the glass ceilings. Don't build a case for diversity, equity, and inclusion. You are an establishment that depends on other humans to operate your business and bring success. Their sense of belonging, inclusion, and psychological safety is your direct responsibility.

  • Paving the Road to Production

    Coinbase has gotten much from its deploy pipelines. We deploy thousands of servers across hundreds of projects per day, to serve our millions of customers and their billions in assets. This article explores the journey Coinbase took to get where it is now, it describes their paved roads and how they've had to change over time in response to their company growing.

  • Increasing Developer Effectiveness by Optimizing Feedback Loops

    We can think of engineering as a series of feedback loops: simple tasks that developers do and then validate to get feedback, which might be by a colleague, a system (i.e. an automation) or an end user. Using a framework of feedback loops we have a way of measuring and prioritizing the improvements we need to do to optimize developer effectiveness.

  • Leading during Times of High Uncertainty and Change

    To help teams succeed during uncertain times, leaders need to navigate different horizons; managing themselves and building strong relationships with their teams. Organisations need leadership at all levels. In order to be successful, leaders should develop skills for self-management, delegation, dealing with ambiguity, managing in all directions, systems thinking, and leading through context.

  • Migrating Monoliths to Microservices with Decomposition and Incremental Changes

    Microservices migrations are not a trivial change. You have to think carefully about whether or they're right for you. Maybe a monolith would be enough for your context and business needs. In this article, Sam Newman shares some decomposition and incremental changes patterns that can help you to evaluate and migrate to a microservices architecture.

  • Server-Side Wasm: Today and Tomorrow - Q&A with Connor Hicks

    At QCon this year, Connor Hicks presented the opportunities linked to using Web Assembly outside of the browser. Hicks addressed current and future server-side use cases for WebAssembly. He explained how Wasm and its ecosystem allow developers to craft serverless applications by declaratively composing serverless functions written in different languages.

  • Scaling Distributed Teams by Drawing Parallels from Distributed Systems

    An effective distributed team’s characteristics are accountability, good communication, clear goals and expectations, a defined decision-making process, and autonomy with explicit norms. Ranganathan Balashanmugam spoke about scaling distributed teams around the world at QCon London 2020. In his talk he showed how we can apply distributed systems patterns for scaling distributed teams.

  • Exploring Costs of Coordination During Outages - QCon London Q&A

    Coordinating different skills, knowledge and experience is necessary for coping with complex, time-pressured events, but it incurs costs. Well-designed coordination is smooth and can be trained for. Learning how to take initiative, being observable to your counterparts and engaging in reciprocity are examples of strategies engineers can use to lower costs of coordination during outages.

  • Leading through Experimentation in a Distributed Agile Organization

    Change is our work as agile coaches and leaders. When your teams and organizations are distributed, experimentation becomes the primary tool to aid our change navigation. As online collaboration technologies improve and we begin to understand how flexibility and choice become critical in distributed work, modeling and teaching experimentation are important for agile coaches and all leaders.

BT