10 Step Plan to work with Software Engineers

appraisals, Product, Team

Inspired by Ken Norton

1. Absorb praise

As a PM, expect your successes to be recognized. Understand that executives will often attempt to spray accolades across the entire team. You must be vigilant: you are the one who is being celebrated, and you are the one who must take all of the glory. Credit is career currency, and you’re polishing your own LinkedIn profile, not theirs. Step up you ninja star, take the spotlight and bathe in the attention.

2. Deflect blame

Occasionally something will go wrong. In software development, the thing that goes wrong is usually software. When software fails, a software developer is to blame. That’s just logical. Make sure to redirect the accusations when they’re aimed at you, and to preemptively sow blame whenever possible. Always remember: there is no “we” in me.

3. Don’t bother with the details

Frivolous little technical details are for the engineers, and you have much better things to be doing. Like ideating. Comprehension only leads to disappointment and fosters a so-called “rational” view of what’s possible. You can’t change the world if you know what’s hard and what’s easy. Avoid minutiae at all costs. Anything you imagine can be done in ten lines of code. It hardly matters which ten.

4. Involve them late

Software engineers write code, that’s what they do. They’re always fretting about how stuff is distracting them from their hacking. So why would you waste their time involving them in a project before it’s ready for coding? You don’t see a bunch of construction workers kicking back in an architect’s office. Bring them in once all of the strategizing and synergizing is done and all that’s left is the programming.

5. Add process

The best way to demonstrate your value to the team is by introducing process. Rules grease the wheels of progress. Look for opportunities to schedule update meetings, daily briefings, and all-day reviews. Keep your engineers productive by requiring them to fill out tracking spreadsheets, status reports, and cross-functional executive update emails. If you don’t do it, nobody will. Get going: those voicemails aren’t going to “touch base” by themselves!

6. Never tell the reasons

Engineers are highly analytical, which means they take a less-sophisticated approach to decision-making that often relies on “supporting data” or “rationales” rather than vision and blue sky thinking. Maintaining an air of mystery when decisions are made will keep them on their toes. They’ll complain regardless, there’s no reason to give them specific things to gripe about.

7. Commit for them

Your job as the product manager is to make assurances on behalf of your team. Leadership means setting the bar high and challenging everyone to teleport over it. Show your ambition by committing to project schedules without consulting your team. Being held accountable to somebody else’s promises builds character and brings out the best in people. Think of JFK. He picked a totally random date to land on the moon and NASA beat it, claiming the planet’s vast mineral reserves for Standard Oil.

8. Interrupt at any time

You’re a busy knowledge worker, and the last thing you need is to wait for an engineer to finish their current task. You need it ASAP (pronounced “AY-sap”). Whatever an engineer is working on is less important than what you need right now. Feel free to interrupt them at any time. Chat windows and phone calls can be effective, but nothing beats the good old shoulder tap for impact. What if they’re working on something you asked them to do an hour ago? No problem! This will serve as a good lesson in prioritization.

9. Be ambiguous

There are few things more dangerous to your career than being proven wrong. Ensure this never happens by aiming to be as vague and imprecise as possible. Feel free to change your mind at will. If you take every position imaginable, by definition you were right.Don’t record anything in writing, or better yet make documents so wordy and tedious nobody will bother reading them.

10. They’re always lying

Engineers will sometimes say something is “impossible.” They’re lying. Nothing in engineering is impossible if you set your mind to it. The Wright Brothers never thought that flying across the Atlantic was impossible! Assume a software engineer is always deceiving you and act accordingly. So when you hear terms like “technical debt” or “working from home,” you’ll be ready to call their bluff.

There you have it. My Ten-Step Plan for Working With Engineers. Print this out and hang it in your workspace (consider keeping it hidden from view). If you follow my plan, you too can become a great product manager (if not one of the three greatest

. It’s that simple.

Afterword

If it’s not blindingly obvious by now, you should do exactly none of these things. Even the most conscientious PMs are occasionally guilty of less extreme infractions in each of these categories. I certainly am. Strive for the opposite and chances are you’ll succeed as a PM. Or at the very least, you’ll have engineering co-workers who’ll want you to.

  1. Deflect praise
  2. Absorb blame
  3. Sweat the details
  4. Involve them early
  5. Streamline process
  6. Always tell the reasons
  7. Never commit without them
  8. Respect their time
  9. Be specific
  10. Trust them
Advertisements

The official guide for the top 50+ recommended product manager tools.

Learnings, opensource, Product, startup, Uncategorized

Collaboration

Confluence: Wiki tool to centralize your team’s product knowledge.

Google Sites: Launch an intranet for your company, a project site for your team or a portal for customers with our site builder.

Slack: Platform for team communication: everything in one place, instantly searchable, available wherever you go.

TinyPM: Lightweight and smart agile collaboration tool with product management, backlog, taskboard, user stories and wiki.

 

Product Roadmap

 
Aha: Web-based product strategy and roadmapping software for agile product managers.

ProdPad: Lets you capture ideas and feedback, create product specs, and build product roadmap.

ProductPlan: Lets you plan and communicate your product roadmap.

Roadmunk: Visual roadmap software for product management.

 

Project Management

 Asana: A web and mobile application designed to enable teamwork without email.

Basecamp: A web-based project management and collaboration tool.

Blossom: A lightweight project management tool for modern software development teams that love continuous delivery & simplicity.

CodeTree: Adds extra functionality on top of GitHub issues to help with project management.

Jira: A flexible and scalable issue tracker for software teams.

Pivotal Tracker: A lightweight, agile project management tool for software teams.

Sprint.ly: Agile project management software for your whole team.

Trello: A tool to visually organize and see your project in a single glance.

Wrike: A work management and collaboration platform used by high-performance teams everywhere.

 

Productivity

 Evernote: Lets you take notes, track tasks, and save things you find online.

Omnifocus: A task management platform for Mac, iPad, and iPhone.

RescueTime: A personal analytics service that shows you how you spend your time and provides tools to help you be more productive.

Todoist: An online task management app and to-do list.

Wunderlist: Lets you create and collaborate on to-do lists.

 

E-mail Marketing

 Aweber: E-mail marketing software that allows you to quickly segment your lists by subscriber opens or clicks, location, and even what pages subscribers visited on your website.

Constant Contact: Offers effective email marketing and other online marketing campaigns to meet your business goals.

Goodbits: Build newsletters for your team or customers in minutes.

InfusionSoft: Combines CRM, email and social marketing, and e-commerce solutions. It is most known for it’s easy ability to segment subscribers by activity to help you send very targeted emails.

MailChimp: Online email marketing solution to manage contacts, send emails and track results.

 

User Research

 Google Forms: Lets you create a new survey on your own or with others at the same time.

SurveyMonkey: Lets you create and publish online surveys in minutes, and view results graphically and in real time.

Typeform: A form and survey builder that makes asking questions easy on any device.

UserTesting: Lets you get videos of real people speaking their thoughts as they use your product.

UXCam: Allows you to eliminate customer struggle and improve user experience by capturing and visualizing screen video and user interaction data.

 

Metrics & Analytics

 CrazyEgg: Visualize where your visitors click and engage with your website.

GoodData: A cloud-based business intelligence platform providing data management solutions for businesses.

Google Analytics: Provides data collection / management, data consolidation, data analytics, and reporting.

Kissmetrics: Delivers key insights and timely interactions to turn visitors into customers.

Mixpanel: An analytics platform for the mobile and web, supporting businesses to study consumer behavior.

Optimizely: An experience optimization platform enabling A/B and multivariate testing for users to enhance their websites & mobile apps.

Qualaroo: A qualitative insights SaaS solution that is triggered by web visitor behavior, providing intelligence that helps marketers better understand customer needs.

Segment: A single hub to collect, manage, and route your customer analytics data.

 

Design

 Flaticon: A search engine for 16000+ glyph vector icons.

Sketch: A really easy to use design tool for designers. Currently only available on Mac.

Noun Project: Search over 100,000 icons that you can drag and drop into your favorite Mac apps.

 

Wireframe / Mockups

 
Axure: An interactive wireframe software and mockup tool.

Balsamiq: A wireframing and mock up tool with a high focus on usability. Quickly come up with mock ups and easily share them with your clients.

Mockingbird: Helps you you create and share clickable wireframes. Use it to make mockups of your website or application in minutes.

Moqups: An HTML5 app used to create wireframes and mockups.

UXPin: Lets you wireframe any user interface quickly and easily.

 

Prototyping

 
Invision: A prototyping tool that lets you upload designs and add hotspots to transform your static screens into clickable, interactive prototypes complete with gestures, transitions, and animations.

Proto.io: Lets you create fully-interactive high-fidelity prototypes that look and work exactly like your app should.

Protoshare: An easy-to-use, collaborative prototyping tool that helps teams visualize requirements with website wireframes and interactive software and mobile prototypes while working together in real-time.