InfoQ Homepage Culture & Methods Content on InfoQ
-
Being an Agent of Change for Others and Yourself
Everyone can be an agent of change, even with small contributions. You can also be an agent of change for yourself by focusing on what you can control. Knowing why to change matters, and exploring it you may find out that it’s not the time yet to make a change.
-
Challenges and Skills for Staff+ Engineering, Learnings from QCon New York
The QCon New York 2023 track Staff+ Engineering: New Skills, New Challenges comprised four talks that went into decisions with buy-in, growing people, the art of staff+, and deciding between individual contributions and leading people.
-
Considering Remote Mob Programming in a High Stakes Environment
Remote mob programming helped a team in a high-stakes environment to be resilient, work under pressure, and deliver successfully. Setting expectations on the first call and being serious about the reasons for doing mob programming ensured that the team kept doing it.
-
Treat Your CI System as a Product for Faster and Better Feedback
Improving the feedback time of a continuous integration (CI) system and optimizing the test methods and classes resulted in more effective feedback for development teams. CI systems are an important part of the development process and should be treated as such.
-
How Resilience Can Help to Get Better at Resolving Incidents
Applying resilience throughout the incident lifecycle by taking a holistic look at the sociotechnical system can help to turn incidents into learning opportunities. Resilience can help folks get better at resolving incidents and improve collaboration. It can also give organizations time to realize their plans.
-
Improving Developer Experience in a Small Organization
A way to improve developer experience is by removing time-consuming tasks and bottlenecks from developers and from the platform team that supports them. How you introduce changes matters; creating an understanding of the “why” before performing a change can smoothen the rollout.
-
Embracing Complexity by Asking Questions, Listening, and Building a Shared Understanding
When dealing with an environment that feels complex, people commonly look for ways to reduce variability and increase control for dealing with complexity. An alternative approach is to embrace complexity by acknowledging that it exists, asking questions and listening, and constructing a shared understanding based on different perspectives. This lets us improve how we adapt on an ongoing basis.
-
What Carbon Neutral Really Means and How Net-Zero Is Different
Carbon neutrality means that the total amount of emissions is either eliminated, neutralized, or compensated. Net-zero is a target that doesn’t include compensation and puts more emphasis on avoiding carbon emissions. Many products, data centers, or companies are already carbon neutral, but few have reached net-zero. The problem with offsetting approaches is that you continue to emit carbon.
-
Debugging Difficult Conversations as a Pathway to Happy and Productive Teams
Any time we talk to someone or to a group when there are high stakes and/or high emotions, difficult conversations can happen. If we ignore difficult conversations they typically don’t resolve themselves, in fact, they often get worse. Handling difficult conversations involves thinking about the logistics, having the proper mindset, and preparing yourselves.
-
How Big Tech Lost Its Way - Regulation and Freedom
Technology plays an ever increasing part in our lives, yet big tech seems to be running out of control, showing behavior that is at odds with its principles. Regulation is starting to develop, but laws are rarely applied. The leaders of big tech companies should realise their job is culture. At QCon London 2023, Andy Walker gave a talk about how big tech lost its way.
-
Unlocking Software Engineering Potential for Better Products
Becoming an empowered team means solving problems rather than shipping features. Empowering software engineers and involving them early in discovery work can result in better products. If we measure outcomes rather than output, we can also hold teams accountable. Supporting software engineers to empower them means trusting them and getting out of their way.
-
Curiosity and Self-Awareness are Must-Haves for Handling Conflict
When you're in a team, collaborating with others, it's crucial to embrace diverse opinions and dissent; you need to have good conflicts. Conflicts have bad reputations, but with curiosity you can harvest more positive outcomes and build trust and psychological safety. Self-awareness of your emotions and reactions can help prevent saying or doing something that you might regret later.
-
Applying Test-Driven Development in the Cloud
In the cloud, application development can be treated end-to-end with its accompanying infrastructure. This makes it possible to use test-driven development (TDD) and refactoring on the full application, which can bring down maintenance costs.
-
What Software Developers Can Do to Learn Effectively
Software developers are constantly learning new languages, frameworks, tools, and techniques. It can be challenging to decide which topic to learn, estimate our competence level, prevent becoming overwhelmed, and keep our learning effective. For better learning, break it down into realistically sized phases, and repeat the same topic several times to really get to experience it properly.
-
Adopting Artificial Intelligence: Things Leaders Need to Know
Artificial intelligence (AI) can help companies identify new opportunities and products, and stay ahead of the competition. Senior software managers should understand the basics of how this new technology works, why agility is important in developing AI products, and how to hire or train people for new roles.