Been thinking a lot about how to organize an engineering team, run a team, and build a good culture. Taking notes on different posts from blogs I follow. I’m thinking about this from the lens of my early stage startup Plastic Labs

Some of these thoughts also influence my thoughts/notes on technical screenings


The way I’m seeing this play out is as so:

  1. Team / Company principles — These are ways and ideas I want to instill in the team and how I want us to act. More general ideas of how to be not necessarily concrete prescriptive actions or processes. More mental models and “vibes” of the team: “Don’t be toxic”, “bias for action”, “customer obsession”, “We’re not perfect but we should strive to get better”
  2. Expectations and standards for me — As a leader I want to set expectations for myself and want to be held accountable for them. So these are principles I want to say I will try to do and instill in future leaders in the organization. These should be specific vectors for feedback to grow with and things a member of the organization should be able to talk to me about if they feel a lapse.
  3. Operating Principles — More concrete prescriptive things. Might be some double dipping with #1. Thinking about it with things like: “bias for action”, “don’t waste excess time planning and with meetings”

A whole separate note on managing “Hustle on Startups” is something I’m thinking about too. I want to be very realistic there, but also talk about what I think is healthy and what isn’t. That’s something I feel passionate enough about to focus on.

Another thing to mention is processes/practices that we’d want in the team sort of prescriptively.

  • Kudos meetings
  • Regular friction log cadence
  • Post mortems
  • Meeting cadence
  • Blog post first
  • 80/20 time

On Technical Deb: Shoveling Forward

https://ferd.ca/on-technical-debt-shoveling-forward.html

My takeaway from this post which is more a reframing of technical debt is a parallel to another post which talks about how to design our tech debt. Instead of writing code that will accrue debt and be very hard to change, design code that is easy to delete. Deleting can be faster than refactoring and often better for moving forward.

You Are Not Your Impostor Syndrome

https://flower.codes/2024/06/23/you-are-not-your-impostor-syndrome.html

Imposter syndrome is natural in the workplace and is often a good sign. This post distills this pretty well and mentions some concepts that I’d hope are present in team members.

  • Imposter syndrome is a sign you care
  • It’s a sign you’re growing

I want our team to be a place where individuals are growing and often we are going to be thrown into new territory either because we are scrappy or because the job will morph as the company grows.

Even if you don’t initially have imposter syndrome I would encourage everyone to be ambitious and seek discomfort.

15 Pieces of Advice That Will Make You a Better Leader

https://flower.codes/2024/06/21/15-pieces-of-advice-that-will-make-you-a-better-leader.html

”At its core, it’s about communication, honesty, and empathy.”

My restatings and additional thoughts on the different ideas.

  1. Communicate
  2. We need to build trust so people can be comfortable and speak their mind
  3. Humility is important and understanding we don’t know everything.
  4. Ask questions ask questions ask questions. Personal thing for me a sign of a good leader is someone who can dig in and ask a ton of questions. Not really what this post is saying but it echos the importance of asking questions.

Note The idea that asking questions is a sign of a good leader comes from this talk I added a long time ago influential questions

  1. Listen then speak
  2. Be strict about prioritizing. Actually do it don’t give vague ideas.
  3. Don’t say “should” it’s too vague and hard to dictate action on.
    • Nobody owns “should.” It’s safe. There’s no accountability.
  4. Take notes and write down everything. (I encourage PKM nerds to do their thing)
  5. Classic be a leader not a manager idea. Lead by example.
  6. Respect other’s time. Super important especially when not all time is the same
  7. Always be learning. If we want the ICs to do this it needs to start from the top.
  8. Be able to log off and take time away.
  9. Make sure metrics are meaningful. Be careful of Goodhart’s Law
  10. Actually care about people

Authentically Speaking

https://flower.codes/2024/01/16/authentically-speaking.html

”Real authenticity is about honest connection. It’s about sharing a truth with someone else—not to generate a specific outcome, but to create a relationship.”

As a manager and a team we should strive for authenticity in our day to day interactions. No use putting up fronts and no use lying about the state of things. It’ll just hurt us later.

Work Life Imbalance

https://flower.codes/2023/12/21/work-life-imbalance.html

  • Immense overworking can come from a place of fear not only a “grindset”
  • It’s easy to get an unhealthy relationship with work where a lot of your self worth can be linked to your job performance.
  • You should not have to feel guilty about doing things that keep you healthy or happy.
  • ”when you take responsibility for your teams’ failures, yet pass all successes through to them, it can be pretty demoralizing, but that’s the job of a good leader” — Being a leader is hard.

The Constant Introspection of Management

https://www.elidedbranches.com/2013/12/2013-constant-introspection-of.html

Some notes on the difficulties of being a manager and the emotional challenges you’ll face along the way.

”The hardest part for me of going from individual contributor/architect/tech lead to managing in anger has been the lack of certainty.”

  • You need to care about your people without taking the things they do personally.
  • Every person who quits feels like an indictment of all the ways you failed them.
  • As a manager you lose both autonomy and mastery.
  • You are always only as good as your team.

On the role of CTO

https://www.elidedbranches.com/2015/02/cto.html

  • The CTO is NOT an engineering role.
  • The CTO is NOT necessarily the best engineer in the company.
  • There are many different paths to CTO and different focuses and approaches
  • More on approaches:
    • Focus on processes of engineering
    • Focus on hiring/recruiting
    • Focus on technical architecture
    • Focus on product roadmap

”The CTO is the technical leader the company has in its current stage of evolution”

a better definition

”CTO should be the strategic technical executive the company needs in its current stage of evolution"

  • "The CTO is an executive first, a technologist second."
  • "the CTO must understand where the biggest technical opportunities and risks for the business are and focus on capitalizing on them. “
  • It is important to maintain reporting power and actual control of the team otherwise it can be easy to lose your effectiveness.

Notes on Startup Engineering Management for Young Bloods

https://www.elidedbranches.com/2015/10/notes-on-startup-engineering-management.html

  • Often leaders learn through mistakes, but those mistakes are often very costly.
  • A startup is going to be different than a regular manager because you have no safety net.
  • A big part of your job is to create that safety net.
    • Create sane processes
    • Create sane standards
  • You need to setup the team to scale without you having to make every decision yourself.
  • Coordination is hard!!
  • If the set of projects going on can fit into your head, your project list is probably trivial.
  • If the set of people is small enough that everyone knows everyone else, politics is trivial. Politics at that scale is a sign of organizational illness.
  • ”The team is moving too slow” is the hardest problem you’ll ever debug.
  • Trust is of the upmost importance as you get farther and farther from the work. What you do for your direct reports will flow down the chain.
  • Metrics are not everything but they can be useful.
  • Learn to estimate capacity.
  • People can do more than they think they can. Especially at startups people want to ship so let them. If you’re bored do it better or cheaper.
  • People will quit. It’s a reality you will have to learn to deal with.
  • Your job is to survive

The Manager as Debugger

https://www.elidedbranches.com/2015/11/the-manager-as-debugger.html

  • The author often finds that people great at debugging are great managers. They are great at diving into and discovering the “why” around issues.
  • You need to be able to hypothesis why problems are occurring, you can’t rely stricting on micromanaging and monitoring as that can impact results

Things Your Manager Might Not Know

https://jvns.ca/blog/things-your-manager-might-not-know/

  • What’s slowing the team down
    • Ask about their challenges
  • Exactly what individual people on the team are working on
    • Ask what they are working on
  • Where the technical debt is
    • Ask about technical risks
  • How to help you get better at your job
    • Ask what they need to do better
  • What your goals are
    • Ask about their goals
  • What issues they should be escalating
    • Ask what they’ve been struggling with the most and as a follow up ask if it needs to be escalated
  • What extra work you’re doing
    • What is extra work you are doing that isn’t budgeted right now? Docs, etc. Can it be worked into the schedule? Can it be considered when thinking of career progression
  • How compensation/promotions work at the company
    • I should know this lol

I largely think these are problems that will occur as the company grows bigger at the small scale we are at right now, I should have visibility or direct control over a lot of these. That being said still things that I can be accountable for and might miss so will make efforts to not miss them.

Getting Things Done

https://jvns.ca/blog/2016/09/19/getting-things-done/

  • Have a vision. Like this concept a lot should be clear what you are actually working towards. If you don’t get the vision work it out with the manager/architect. Make a document. Do whatever you need to make it clear in your head.
  • Focus on one thing at a time. Like this too. Don’t overload and don’t multitask and do everything bad. Do one thing well and keep going.
  • Trying to get something every day. This is a good rule of thumb as well and can be anything. Building on the live to create idea can be notes, can be code, whatever. Put something out there to crystalize your work.
  • Talk to somewhen you get stuck — have a culture where it’s ok to not know everything, be humble and be comfortable asking for help.
  • Do whatever’s necessary — This with caveats. Make sure you are smart about what you are doing. If you’re going to create excess tech debt design to be deleted, but ultimately find scrappy and subversive ways to get stuff done.
  • Believe in yourself — You were chosen to be on the team because we believe in you, so believe in your ability to figure things out.

What’s a senior engineer’s job?

https://jvns.ca/blog/senior-engineer/

A senior engineer, founding engineer, whatever you wanna call it, at a startup especially one as small as Plastic is going to be expected to grow with the organization and be incredibly high context. They will be a pillar as the organization grows and there’s a lot that will go into that.

  • Write code
  • Do code reviews
  • Write and review design docs
  • Help team members when they’re stuck
  • Hold folks to a high quality standard
  • Create new projects
  • Plan your project’s work
  • Proactively communicate project risks
  • Communicate successes!
  • Do side projects that benefit the team/company
  • Be aware of how projects relate to business priorities — (be invested in the direction of the company, don’t do tasks mindlessly)
  • Decide when to stop doing a project

There’s a lot here but it’s all about being a high agency thought leader that can impact decision making and lubricate the development process to move faster. You should be an augmentative force.

What not to do:

  • Make sure every team member’s work is recognized
  • Make sure work is allocated in a fair way
  • Make sure folks are working well together
  • Build team cohesion
  • Have 1:1s with everyone on the team
  • Train new managers / help them understand what’s expected of them
  • Do project management for projects you’re not working on
  • Be a product manager
  • Do sprint management / organize everyone’s work into milestones / run weekly team meetings

Let your manager do their job and just work to support your team members.

How do you decide what to work on?

https://jvns.ca/blog/2016/08/16/how-do-you-work-on-something-important/

Have a clear goal to work towards and be thoughtful about the work you need to do. Will it further this goal?

Understand that there is no “right thing”. Not everything will be equally impactful, but that’s ok. Some things may be wasted work or a dead end, but doesn’t mean the work was a complete waste. Speed run these failure modes and move on.

⭐️ Believe in the possibility of completing what you are working. Part of this is having an ambitious mindset, but also be careful to scope things well so it can be done in a reasonable time. Scope creep is real and shouldn’t just be beaten through “hustling”. Perserverance is still important though. You’ll encounter unexpected complications and delays and you just need to push through. It’s a hard balance of scoping things and managing unexpected growth.

Questions I’m asking in interviews

https://jvns.ca/blog/2013/12/30/questions-im-asking-in-interviews/

These are questions an interviee candidate would want to ask a company and thus should be things I take the time to think through and know the answers too.

  • Make a full FAQ answer list for these questions

On Being A Senior Engineer

https://www.kitchensoap.com/2012/10/25/on-being-a-senior-engineer/

  • Maturity is a big key quality of a senior engineer
  • technical skills are an obvious essential, but not sufficient aspect
  • Seek constructive criticism of their designs
  • Understand the non-technical areas of how they are perceived
    • Understand that no one wants to work with an asshole and work to not be like that
  • Don’t shy away from making estimates and are always trying to get better at it.
    • You need to be comfortable working with some nonzero amount of uncertainty and risk
  • Understand that all of their assigned work won’t be the most glamorous stuff
  • They should ift the skills and expertise of those around them
  • Understand the difference between mentorship and sponsorship and work towards the latter.
    • Instead of focusing on helping underrepresented/underprivileged members of the team to develop skills work on providing them more opportunities to display their skills.
  • Be explicit about the trade-offs when making judgements/decisions
  • Be empathetic
  • Don’t make empty complaints
  • Are aware of cognitive biases

References the The Ten Commandments of Egoless Programming

Making Small Culture Changes

https://jvns.ca/blog/2017/04/16/making-small-culture-changes/

A lot of different good ideas, but my biggest takeaway for the context of these notes is that culture can as much be a bottom up thing as a top down thing.

⭐️ Encourage people to be the change they want to see and initiate cultural changes themselves

How Do You Make An Awesome Team?

https://jvns.ca/blog/2017/01/13/how-do-you-make-an-awesome-team/

  • Work in public (public channels)
    • This was a huge thing at Hexlabs and became an indispensable source of information to find DRIs and other things
  • Talk like you might be wrong in discussions
    • Sorta of a how to make friends and influence people approch. But generally be humble and be ok with being wrong. I think there’s a balance here, you don’t want to get steam rolled if you actually believe in your opinion.
  • Bottom up cultural changes

Senior engineering & fantasy heroes

https://jvns.ca/blog/2015/03/28/senior-engineering-and-fantasy-heroes/

  • The fortune teller: can predict future challenges and obstacles early on saving a lot of time
  • The cattle wrangler: Great at standardizing and working with disparate teams/processes/code repositories.
  • the spring of knowledge: Just knows every arbitrary and detailed fact about something off the top of their head.
  • The gardener: Great at managing technical debt and finding efficient and reasonable ways to fix it along with knowing how to design to mitigate it in the future.

Learning at Work

https://jvns.ca/blog/2017/08/06/learning-at-work/

In general this is a aspect of the team that I want. I want people to be voracious learners who are greedy for knowledge. I want them to keep their hand on the dial and keep up with the latest practices, news, and technologies.

Methods:

  • Blog posts
  • Conferences
  • Books
  • talks
  • Build projects and learn from them
  • Watch senior people operate
  • Read every pull request
  • Read source code
  • Follow up on bugs you couldn’t figure out and gave to someone else/escalated

Asking Questions

https://jvns.ca/blog/2016/08/31/asking-questions/

A good framework for different types of questions. Better in the appendix will replicate there. In general being curious and inquisitive is a strong trait in a team member. A desire to understand what is happening around them.

What I Learned at Stripe

https://steinkamp.us/posts/2022-11-10-what-i-learned-at-stripe

Stripe is often touted as having one of the best cultures and most talented engineering teams in the industry. So investigating them should give more insights into practices to copy.

  • Gratitude built-in
    • Public shoutout channels
    • Propagate to their managers
    • Friday “Mad Props” meetings (similar to the Praetorian celebrations meeting)
  • The DRI (Directly Responsible Individual)
    • Each task and project in the team has a single person who is responsible for that thing in that moment
  • Learning in public through shared documents and detailed design reviews
  • Shipped emails
    • building a culture of celebrating shipping.
    • similar to the work from a Press Release
      • Not always but apparently projects can often start from this
  • ⭐️ Deadlines have a confidence score associated with them
  • Direct user feedback is highly coveted and desired by engineers.
  • ⭐️ Friction Logs
    • Dog food the product and write down every point of friction you encountered. Use that as actionable feedback to improve the product
  • Open data warehouse
  • Actually use CICD for testing and QA
  • Big investments in dev tooling pay multiples
    • Huge hiring incentive too (people love this)
    • Gives your team super powers

The 37 Signals

https://37signals.com/

This company and the creator is referenced a lot online as a respected figure. I hear these signals reflected a lot and their blog posts and ideas usually have some merit, although they may not be relevant in every situation. That being said I want to see which of the signals I like and which I find to be noise.

The ones I like:

  • #3 Small Teams - You can do big things with small teams. I know they have a concept of teams being no bigger than 2 people. I like this concept. Move’s fast, less useless meetings and standups, less communication drift.
  • #5 Err on the side of do — similar to bias for action. The idea that actions are temporary and unless there’s a large risk (huge credit spend, etc.) then just go for it. If you’re really worried document the decision so we can review it later.
  • #8 Work life balance — this is a hard one, startups in general will require more from us since we’re under resourced. But one key to pull out from this is A lac of sleep isn’t a badge of honor, it’s a mark of stupidity. I wouldn’t go that far, but we shouldn’t brag about burning ourselves out.
  • #11 Don’t emulate the office — A crystalization of the idea “this meeting could have been an email.” It’s real and should be remembered.
  • #12 Hours aren’t equal — Some hours are better than others, uninterrupted flow states vs broken up tiny chunks. I will do my best to guard engineers time to give them the most high quality time possible.
  • #13 If you’re talking about something new or novel, you’ll have to repeat yourself for years before you’re heard. — Something big at Plastic. We are working on novel stuff it’s going to take a while to get everyone caught up with us.
  • #14 Meetings aren’t free — a repeat a bit of #11, but understand that meetings shouldn’t be the default. Protect our time.
  • #15 Bury the hustle — Again a cultural thing I want to instill. Hustle culture is toxic, but we need to work hard. Let’s be honest about what’s happening and respect each other.
  • #25 Disagree and commit — We’re going to have disagreements, but we need to keep moving forward. It’s better to find out we were wrong faster than spend time debating longer. If we just try and realize it will pay off in the future where we won’t make it again.
  • #26 Kick in the face, kick in the ass — Let’s be antifragile and grow from set backs.
  • #30 Miscommunication problems — As Osmo Wiio said, “If communication can fail, it will. If a message can be understood in different ways, it will be understood in just that way which does the most harm.” Take this to heart and do the work to communicate clearly.
  • #31 easy — be respectful of what other people are doing. Everything looks easy when you’re not doing it yourself
  • #33 Planning is guessing — Keep plans shorter and understand they will change.
  • #34 Sleep on it — a health thing and a good practice. I’ve found this very often in my life, trusting my 12am self is rarely a good idea.
  • #35 Companies aren’t families — My thought on this is there’s two extremes and we want to sit somewhere in between. Sure we’re not a family, but we should be friends, we shouldn’t be enemies. Respect each other, help each other out.
  • #36 Context > Consistency — If something isn’t working throw it out. That’s fine.

Lot’s of good stuff here. I generally see a lot of it as don’t be toxic and be respectful of other people and their circumstances.

Don’t waste peoples time with excess process and focus on “just doing things.”

https://www.youtube.com/watch?v=aYtAdWASGzg

Praetorian New Hire Survival Guide

https://www.praetorian.com/wp-content/uploads/2024/06/2024-New-Hire-Survival-Guide.pdf

Like the idea of a new hire survival guide in general. Very healthy practice and evergreen note to keep building towards. A good exercise could be for new hires to contribute to the new hire survival guide at the end of their first week.

First week goals, similar to what I saw at Microsoft with the goal for first commit or PR by the end of the week.

Main focus in this is the culture page and the 11 principles.

  1. Default to open
  2. Orient to action
  3. Lean into discomfort
  4. Be Humble
  5. Yes, and
  6. Follow your passion
  7. Put the customer first
  8. Make craters
  9. Performance matters
  10. Try harder
  11. Struggle and celebrate together

All bangers. Really nothing in here that I would push back or not want to instill in my own organization. Open and clear communication, being a small team that understands we don’t know everything but we can figure it out and make strides, putting the customer first and being obsessed, and remembering that it is a team effort.

Work Life Harmony at Praetorian

https://www.praetorian.com/blog/work-life-harmony-at-praetorian/

Key takeaway is that as a team we should be understanding of each other. A startup makes it harder to have a distinct work life balance with a strict schedule, but the advantage of being small is we can be flexible.

Work the hours you need to, do what you need to to stay healthy and manage your life, but let’s get stuff done.

None of us are trying to be asshole’s and we should be here for each other.

There’s No Speed Limit

https://sive.rs/kimo

Select quotes

  • ”If you’re more driven than most people, you can do way more than anyone expects”

Really just a concept/idea I want to our team to have instilled. Don’t get caught up with arbitrary prequisites or credentials and be driven enough to realize we can figure out and learn whatever we need.

Have the agency and drive to do what you want and not get blocked by mental blocks. Be ambitious and have a voracious appetite to grow and learn.

Here’s how to live: Create

https://sive.rs/htl23

Love this idea here. We want creators not consumers. What matters is what you can do and put out there. Whether that be ideas or products or whatever put it out there.

Bias towards action and putting stuff out. This will make it easier to communicate your value from a career perspective and always keep the company/team moving forward. Locking up ideas in your head forever makes it harder for people to know what you are doing and can just cause confusion.

Be transparent and act. Another quote I want to highlight here is: “Don’t wait for inspiration. Inspiration will never make the first move.” I’ve found this to be a huge unlock in my career. You get ideas as you do stuff, you can’t just wait. It’s a similar thing with startups. You shouldn’t just think of an idea then make a startup, do stuff and you’ll see the problems that are worth solving.

A thing to be careful of here is to not fall victim to Symbolic Self Completion Theory

Here’s how to live: Love

https://sive.rs/htl22

My main takeaway here is have passion. Meet things where they are, love to learn, love the craft, and be put yourself into your work.

Stripe Operating Principles

https://stripe.com/jobs/culture

Lot’s of great ideas here and company principles to stick too. The first one that always sticks out to me is Customer Obsession. Which they call Users first.

The other principles are sorta no brainers to me. There’s definitely a sense of what should be implied and what should be directly stated.

  • Move fast and urgently, bias for action
    • I think bias for action is the key takeaway here ⭐️
  • Seek feedback is one that should be without saying but I want to focus on. The team should grow from each other. We want a team not a cluster of ICs.

I like all of the “who are we”. Highlights include:

  • Resilient: This is important as a startup where every day is a rollercoaster and you never know what works out to being the big thing that matters.
  • Macro-optimistic: This is important because we need people who realize that every problem can be figured out. They can’t say I don’t know and give up the job is going to entail doing things we don’t have expertise in.
  • Humble: Don’t be a dick

For leaders

  • Obsess over talent is an obvious one for me - it should be a privilege not a right to work at a place. That’s the type of culture and team we should strive to create.
  • Being accountable — blame games are fruitless

Other slogans I love

  • We haven’t won yet
    • Love this one a ton. Encapsulates a lot of ideas of urgency, the market and the relentlessness the company has. Especially at our stage but even moving forward we don’t want to entshitify ourselves.
  • Really, really, really care
    • You want a culture where caring helps and people are rewarded for it.

Some mistakes I made as a new manager

https://www.benkuhn.net/newmgr/

  • Managing doesn’t hav ethe same fast feedback loop and can be riddled with more uncertainty and angst.
    • Be honest about your feelings
    • Ask for specific feedback
  • Remember what the critical task for your role is and focus on that
    • Could be writing, could be coordination (linear), could be code
    • You won’t have the bandwidth to do everything perfectly so understand what is the priority
  • Choose the amount of management you give for a person on a case by case basis
    • ”Manage projects according to the owner’s level of task-relevant maturity"
    • "People with low task-relevant maturity appreciate some amount of micromanagement (if they’re self-aware and you’re nice about it)“
  • You will be faced with many emotionally draining hard questions where there’s no clear right answer. You need to develop this skill and learn not to procrastinate on the answers.
  • Debt builds up with managers just like it does with coding.
    • Build in slack and time to address it.
    • Actually prioritize and put things below the cut line.
  • If you have anxiety about your impact on an individual the best thing to do is just have an open dialogue and resolve it with them.

Look Stupid

https://danluu.com/look-stupid/

Not so much as advice, but a general sentiment I agree with is that you should be willing to look stupid and be ok with it. We’re here to grow and we don’t all have the answers.

Culture Matters

https://danluu.com/culture/

The post more talks about the importance of culture over incetives and processes for driving action. Just echoes why I want to think through the type of culture I want.

  • The culture wasn’t as much a function of hiring as much as it was the onboarding process. That’s the real point where you can mold people around a culture (atleast in the more junior roles)
  • With more senior hires there is a real risk of them impacting the culture and there should be scrutiny for it.

How (some) good corporate engineering blogs are written

https://danluu.com/corp-eng-blogs/

I want blogging and being public to be a big part of the culture at Plastic. So interested in the thoughts around this.

Common processes

  • Easy approval process, not many approvals necessary
  • Few or no non-engineering approvals required
  • Implicit or explicit fast SLO on approvals
  • Approval/editing process mainly makes posts more compelling to engineers
  • Direct, high-level (co-founder, C-level, or VP-level) support for keeping blog process lightweight

Mainly remove barriers to writing content and actually value it.

You don’t want to actively stop people from putting interesting stuff into the blog posts.

95%-ile isn’t that good

https://danluu.com/p95-skill/

An ambitious and greedy mindset I want in our engineers. They should feel like they are capable of quickly learning and getting very very good at something they are unfamiliar with.

Understand that if they focus they can quickly get to the top of their field and that the secret to life it that no one knows what they’re doing.

Staring into the abyss as a core life skill

https://www.benkuhn.net/abyss/

Characterizes the act as thinking reasonably about things that are uncomfortable to contemplate. Often these can be emotionally draining an deasy to procrastinate on.

This is a skill leaders are going to have to keep getting better at and this pot just does a godo job identifying and arguing for it.

Be Impatient

https://www.benkuhn.net/impatient/

Another aspect I want to instill in the team. Be greedy and be impatient. We should want to ship as fast as possible and move as fast as impossible. Strive to get rid of blockers as fast as possible.

This doesn’t mean cut corners, but don’t waste time doing useless things that aren’t moving you forward.

Categories of leadership on technical teams

https://www.benkuhn.net/leadcats/

  • Overall direction
    • ensuring the team is headed in the right direction
    • Set the team’s mission, vision, charter
    • Choose goals, plans, and roadmap
    • prioritize different potential projects
    • communicate that to the team
  • People management
    • Coaching people to improve and grow in their careers
    • Design and oversee hiring process
    • Communicate and evaluate performance expectations
  • Project Management
    • Setting operating cadence
    • Splitting up work between team and delegating
    • Keeping work visible and communcated between different parties
    • POC for the rest of the company
  • Technical leadership
    • Set tech direction
    • Review execution against that direction
    • Mentor ICs
    • Doing some level of IC work yourself

What it means to be resourceful

https://sive.rs/res

An annecdote about how to be subversive and resourceful. Being subversive is in the DNA and roots of Plastic and something we really want to emphasize. Especially at this stage we may not always have the most resources but we find ways to have creative solutions.

⭐️ Resourcefulness and Subversiveness

Becoming a magician

https://autotranslucence.wordpress.com/2018/03/30/becoming-a-magician/

My interest in this post largely comes from the desire to have highly ambitious people with a desire to grow and ones that don’t necessarily want to take the traditional roads to get there.

‘describe the version of you that seems impossible right now’

Reminds a lot of a quote I think Elon said of think about your 5 year goal and try to get to it by the end of the week. You’ll fail, but you’ll be hell of a lot closer than if you did nothing.

Being impatient to get to your goals and working to get to them are really key for me.

Rest in motion

https://mindingourway.com/rest-in-motion/

A good model I think about for managing work and life and the relationship to work. Having work and rest both be integral never ending games that you can keep growing into. With that in mind you can also position both as necessary and both are things you need to do. One can’t exist without the other and the same expectation should be in the team.

The Product Minded Engineer

https://blog.pragmaticengineer.com/the-product-minded-engineer/

An engineer that would likely make a good PM if they gave up the joy of engineering.

By focusing on customer obsessions and user-centric design, having product minded engineers is going to be critical to the success of our team.

I think this idea might be encapsulated well in customer obsession, but this post presents a good framework for how to actually do it.

Traits:

  • Proactive with product ideas/opinions
    • coming from a place of genuine interest and care. Not just status signalling or trying to get credit
  • Data driven
    • Look for feedback and data about the user, don’t just have decisions based on their own vibes or random opinions.
  • Keen interest in the “why”?
    • Looking to understand decisions. This is a culture that will need to exist with PMs as well. They need to be able to back up and explain decisions.
  • Strong communicators and good relationship with non-engineers
    • Have scope and visibility outside of engineering
  • Offering product/engineering tradeoffs upfront
    • Similar to some of th eposts on what make a good senior engineer
  • Quick product validation cycles
    • Seek feedback early and work fast to validate ideas
    • Bias for action, just do it and check don’t think excessively
  • End-to-end product feature ownership
    • Engage after the development is done
    • steak in upkeep and results

Being multidisciplinary and customer obsessed will contribute largely to this culture.

Write code that is easy to delete, not easy to extend

https://programmingisterrible.com/post/139222674273/write-code-that-is-easy-to-delete-not-easy-to

A good philosophy for preventing technical debt and presumptuous optimizations. If we want to be impatient and move fast, quickly validate our ideas and move forward, this is a mental model to adopt to prevent it from shooting ourselves in the foot.

We Hire Folks Who Work Like Founders

https://wellfound.com/blog/we-hire-folks-who-work-like-founders

5 employer principles

  • Serve (customer obsession)
  • Respect (humble, honest, be nice)
  • Trust (High agency)
  • Lead (Ownership)
  • Deliver (Get the job done, the details are largely unimportant)
    • Remote work is fine
    • Work the hours you need to

Values for how to actually do the work

  • Defer to the DRI if there is a conflict the task owner should make the call.
  • Small teams and let people make decisions themselves.
  • Take responsibility
    • For every project you have monitor and report on its metrics, good or bad.
    • Own your decisions
  • Automate where you can
    • If you’re going to have small/low resource teams invest in automation.
    • Save your energy for the high impact work
  • Think through things and care about the details
    • Think through edge cases especially if they’ll be high visibility
  • Ship fast, but ship to learn
    • Fast feedback cycles
    • Learn from customers and dictate future work

Product Engineering at AngelList Talent

https://wellfound.com/blog/product-engineering-at-angellist-talent

More on the product minded engineer and qualities they have.

  • Contributes more than just code
    • Docs, blogs, processes, etc.
  • Collaborate closely with designers.
  • Work full-stack
    • Let’s engineers truly own a project
  • Make fast, impactful decisions
    • Small teams, high quality, continuously shipping
  • Serve customers
    • Customer obsession

Working Backwards (the Amazon Method)

https://www.productplan.com/glossary/working-backward-amazon-method/

The infamous work backwards from a Press Release method.

  • Quicker than an MVP
  • Useful gut-check about a product’s viability
    • Is it exciting?
    • Is it worthwhile?
  • Useful during development
  • Customer centric

I think the formal process might be too much at the small scale of the company now. I like the Stripe more flexible method of having shipping culture and blog posts and not being prescriptive about it.

Could be something to grow into.

Appendix