BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Culture & Methods Content on InfoQ

  • Using ChatGPT for Amplifying Software Testing Practices and Assisting Software Delivery

    Artificial intelligence can assist software delivery and be used to automate software testing and optimize project work. Dimitar Panayotov uses ChatGPT to generate test data, create email templates, and produce explanations based on test results. This saves him time that he can invest to become more productive.

  • Async Ops and Scalable Keyspaces Make Threads Go Viral

    Meta's Engineering team has published a post explaining how they built the infrastructure for Threads, their new online social media and networking service. The decision to launch was abrupt, with the infrastructure teams having just two days' notice. However, the teams were confident in Meta's infrastructure's maturity and past performance to effectively support the app's rapid growth.

  • Building a Dedicated Platform for Frontend Developers at the Norwegian Government

    Recognizing the challenges faced by frontend developers, the Norwegian Labour and Welfare Administration decided to build a dedicated platform to address their needs. It offers services like a CDN, an observability stack for monitoring and debugging, and feature management using Unleash. The platform is treated as a product to drive adoption and improve the developer experience.

  • How Playing Games Enables Engaging Ways of Learning Agility

    Games can help us create a collaborative, joyful, and fun experience in which we play to solve complex problems. According to Jakub Perlak, people can play games that have a meaningful purpose, and have fun in doing so. Games create space for intentional cognitive activity which helps us when learning something new and adapting to changes that are important for agility.

  • The Challenges of Building Cyber-Physical Systems

    There are several challenges in building hardware-reliant cyber-physical systems, such as hardware lead times, organisational structure, common language, system decomposition, cross-team communication, alignment, and culture. A solution to such challenges is to apply agile at the systems level, and to architect both hardware and software into modular components.

  • The Upsides and Downsides of Open Source Adoption

    Benefits of open source projects are supporting rapid innovation, the flexibility provided to customize and adapt tools, and transparency of the code which can enhance security efforts. The downsides are that security by obscurity doesn’t apply, open source is potentially prone to abuse, and when open source tools are not backed up by companies, it might result in a lower level of maintainability.

  • Adopting Agile in Specific Business Domains Using Domain-Driven Agility

    According to Nikola Bogdanov, the real challenge in agile transformations is adapting to business domain specifics and industry constraints; understanding agile is not the problem that needs to be solved. He presented domain-driven agility which utilizes design thinking to visualize agile adoption and make it empirical.

  • Why Leading without Blame Matters to Leaders and Teams

    According to Diana Larsen, a culture of blame is a waste of human potential. People cannot achieve their best and most creative work when their energy goes into avoiding shame and blame. To lead without blame requires a shift toward learning and curiosity, she argues. It begins by building or restoring a relationship of trust and trustworthiness with the people.

  • 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.

  • Applying the Analytic Hierarchy Process for Tech Decisions

    The analytic hierarchy process uses pairwise comparisons and scoring for criteria between the alternatives to give insights into what the best option is and why. John Riviello spoke about applying the analytic hierarchy process to decide what JavaScript framework to use at QCon New York 2023.

  • How to Become a High-Performing Software Team

    The four major elements that enable high-performing software teams are purpose, decentralized decision-making, high trust with psychological safety, and embracing uncertainty. Teams can improve their performance by experimenting with their ways of working.

  • Things We Tend to Overlook Going from Architecture to Release

    People tend to overlook things when developing a new software product or service because they don’t have to think about them on a daily basis. Companies should create an environment where everyone can express their opinion and concerns and encourage bringing up questions to explore different angles and increase understanding.

  • How Good Companies Can Leverage Agile to Fight Civilizational Debt

    Growth, profit, and shareholder value are the cornerstones of today’s economic system, which according to Piotr Trojanowski have proven outdated, reductionistic and not sustainable. He proposes taking the cost of growth into account by using the concept of civilizational debt in agile transformations, and applying agile to realizing humankind's mission through our work.

  • Ethical Machine Learning with Explainable AI and Impact Analysis

    As more decisions are made or influenced by machines, there’s a growing need for a code of ethics for artificial intelligence. The main question is, “I can build it, but should I?” Explainable AI can provide checks and balances for fairness and explainability, and engineers can analyze the systems' impact on people's lives and mental health.

  • Sustainable Product Development Using Agile and Value Stream Mapping

    Sustainable product development can be done by combining agile with concepts from the circular economy in our daily work. Value stream mapping can be extended to incorporate circular economy principles to optimize the flow of materials, information, and energy usage.

BT