-
Transitioning from technical leadership to parenthood, and back again
Navigating any new personal scenario while leading a team can be extremely challenging, but last summer I found myself nine months pregnant and leading our engineering organization through an acquisition while preparing for the birth of my son. On the day he was born, I got the news that the acquisition had been finalized.
-
Extended leave: how to manage the anxieties of returning to work
As more companies offer longer parental leaves and other leaves of absence, managers and their teams are learning how to handle them successfully.
-
Driving architecture alignment across a fully-distributed engineering workforce
InVision started as a small startup several years ago with tens of engineers, small teams working independently as velocity was paramount. But as InVision grew to hundreds of engineers, all fully remote, we realized that this independence was actually slowing us down - teams resolving the same problems, inconsistent metrics, etc.
-
How to hire remote junior developers
You wouldn’t hire a senior developer without giving them any support or possibilities for growth, would you? Of course not!
-
Crafting effective 1:1s for distributed engineering teams
Creating relationships with the individual humans on your distributed team is difficult since you rarely get to see them in person! But a team is much less likely to be effective and successful without a foundation of interpersonal relationships and trust.
-
Splitting the monolith
After years—even decades—on the existing legacy mainframe, we pitched a plan to migrate a company to a new, microservices-based architecture. Convincing management seemed easy, but now we have to deliver: Take the years-old legacy system and break it apart into smaller services and systems we can actually maintain.
-
Solutions for creating and managing inclusive projects
Corporate Culture is an ecosystem and diversity is the air we breathe. As such, how a project/delivery team cultivates its culture impacts the entire project, client relations and end-user experience.
-
Clear, concise and consistent: how to communicate and prioritize risks from the engineering team to the wider organization
Communicating risks, particularly to our non-technical colleagues, is a challenge and by not doing it well we suffer pushback from the business. The risks are varied and at all different levels, but can include technical debt, skill gaps, team burnout, and more.
-
Lessons from flying for engineering leadership
In October of 2008, I'd been unemployed for about four months. I was doing some consulting work, but still feeling entirely uncertain about my ability to make a living, so I did the obvious thing: I decided it was a good time to learn how to fly a plane.
-
Introduction to functional programming
Expressions are the most basic form of human interaction! Programming languages are trending more towards using expressions rather than procedural statements, adopting the declarative paradigm.