As a woman with a few years of experience in engineering I have often noticed that every team has a "Hero", as I have been one myself. The hero is usually identified as the hardworking, highly talented and knowledgeable team member.
Legacy is an inevitability in any business - systems that were once cutting edge naturally age, but still require careful maintenance. And although it’s important work, it can feel less rewarding than working on shiny new features.
Estimating projects is hard. Whether it's negotiating technical debt, understanding new requirements, or grappling with a lack of useful documents; the number of moving variables make it difficult to judge just how long a project will really take.
Have you ever wondered why you aren’t having a bigger impact at work? Why your colleagues aren't listening to your advice or why those next career opportunities aren't coming your way? Stop wondering and start influencing.
As a new manager, your changed responsibility is not to build features, but to build systems to support the people building the features. It can be a challenge to figure out how to prioritise problems alongside the day to day pastoral care of your team.
Powered by technologies such as React and GraphQL, we see frontend applications reach a level of scale and complexity that was traditionally associated with backend engineering and service architectures.
When things go wrong, we tend to focus on mistakes, miscalculations, and deficiencies in design. By limiting our investigations to the details of what went wrong, we ignore a far richer and more interesting source of learning: how things went right.
One of the major challenges faced by teams working on high growth product is of performance. Systems that are built for a given scale of users often fail to deliver the necessary throughput when run with orders of magnitude of load more than what they are built for. Software teams have historically resorted to a myriad set of ways in scaling performance.