Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage Software Craftsmanship Content on InfoQ

  • QCon London: Meta Used Monolithic Architecture to Ship Threads in Only Five Months

    Zahan Malkani talked during QCon London 2024 about Meta’s journey from identifying the opportunity in the market to shipping the Threads application only five months later. The company leveraged Instagram's existing monolithic architecture and quickly iterated to create a new text-first microblogging service in record time.

  • The Impact of Testing in Software Teams

    Communicating quality gaps, holding space for good testing, and writing automation are some of the ways that testers contribute to software teams. According to Maaret Pyhäjärvi, we need to think about testing, not testers. Collaboration and having conversations between team members can result in valuable impact that changes the product and the experiences of our users.

  • How to Tame Technical Debt in Software Development

    According to Marijn Huizenveld, discipline is key to preventing accumulating technical debt. In order to be disciplined you should make it difficult to ignore the debt. Heuristics like fixing small issues immediately, agreeing on a timebox for improvement, and making messy things look messy, can help tame technical debt.

  • Making Software Development Boring to Deliver Business Value

    Given there’s a limit to our cognitive abilities and our comprehension of complex systems, Corstian Boerman argues that software development should become boring. He suggests moving infrastructure out of the way so that it does not burden the day-to-day development process, and focusing on delivering business value in a predictable and repeatable way.

  • Doubles Delivery Performance Using DORA Metrics and Micro Frontends

    The team in’s fintech business unit implemented a series of improvements across the backend and the frontend of its platform and was able to double the delivery performance, as measured by DORA metrics. Additionally, the Micro Frontends (MFE) pattern was used to break up the monolithic FE application into multiple decomposed apps that could be deployed separately.

  • How Moral Values and Ethics Impact Software Delivery

    Ethics and morality ensure fairness and integrity, which according to Anton Angelov is crucial for software professionals and society. The rise of technological advances, globalization, and demographic changes pose challenges to maintaining moral values in software delivery. Angelov believes that it is crucial for the QA industry to have a strong ethical framework.

  • How to Prevent and Repay Technical Debt: What Teams, Tech Leads and Managers Can Do

    Tech leads, project managers, and managers can prevent technical debt by giving software developers more time; in addition, they can plan for spare time and refactoring sprints to allow teams to improve code. To prioritise technical debt, development teams can show how much time we can save if we invest, and how complicated the software will become in the future if we don’t repay technical debt.

  • How to Develop a Culture of Quality in Software Organizations

    According to Erika Chestnut, software organizations can develop a culture of quality with a clear commitment from leadership, not only to endorse quality efforts in software teams, but also to actively champion them. This commitment and advocacy should manifest in data-driven decision-making that strikes a balance between innovation and quality, ensuring that we maintain the highest quality.

  • The Value of Repaying Good Technical Debt

    Bad technical debt is the stuff that has been lingering around; teams need to work around it or fix the fallout as a consequence of this bad technical debt. Good technical debt is intentional, enables benefits for the organisation, and is controlled. Teams can use a disciplined approach for managing and repaying technical debt, for instance by using the wall of technical debt.

  • EqualsVerifier Delivers Improved Support for JPA Entities

    The EqualsVerifier library may be used in Java unit tests to automatically verify equals() implementations inside a project and provides one hundred percent code coverage on equals() and hashCode() methods. Recent releases improved support for JPA, by requiring the use of getters instead of using fields, and solving several related bugs.

  • Benefits of Doing Remote Mob Programming in a High Stakes Environment

    A new team that needed to work remotely in a high-stakes environment decided to try out mob programming. It helped them to quickly go through forming-storming-norming-performing. With mobbing, the team learned new technologies, found solutions for dealing with others in stressful situations, and discovered how to work effectively together remotely.

  • The Challenges of Producing Quality Code When Using AI-Based Generalistic Models

    Using AI with generalistic models to do very specific things like generating code can cause problems. Producing code with AI is like using code from someone else who you don’t know which may not match your standards and quality. Creating specialised or dedicated models can be a way out.

  • How to Create a UI That's Both Robust and User Friendly

    The key challenge in building UIs is balancing ease of use and maintainability, with scale and complexity. It requires thoughtful component design and an understanding of common usage paths to create a UI that's both robust and user-friendly. Automation can be a game-changer when it comes to improving efficiency and consistency in your codebase.

  • Navigating Open Source Integration through a DevOps Lens

    Taking a DevOps perspective on open source can help to incorporate an OSS project into your environment. DevOps engineers are comfortable with using third-party integrations, and they align with the open source mindset of breaking down barriers between different groups and promoting teamwork.

  • How Spotify Carries through Experiments at Scale for Spotify Home

    Spotify runs more than 250 online experiments annually on its Spotify Home platform, which are used by dozen of different teams. To accomplish running experiments at such scale, Spotify uses a number of different tools, explains Spotify product manager Nik Goyle.