How To Stop Hand Holding Developers and
Free up your time for good
The Ultimate Guide To Stop Dealing With Technical Bottlenecks And Empower Your Developers To Thrive On Their Own, While Saving Time and Increasing Revenue
SHOULD YOU INVEST TIME READING THIS ARTICLE?
Do you have enough time?
If you have a limited timeline and need to launch quickly, then an off-the-shelf solution would be more convenient for you.
Do you feel that you’re wasting way too much time and energy on stuff that your developers should be able to figure out by themselves, but never do?
Problem Deja Vu
Have you tried working with multiple developers and face the same problems all the time?
If you answered YES to one or more of the questions above, you will greatly benefit from this article
THE PROBLEM WITH EXPECTING DEVELOPERS TO JUST GET IT
Expecting your developers to simply get it is like expecting famous models to approach you just because you are cute. It might happen once, but it’s never a certainty. The same problem happens when you expect developers to understand your business.
Most developers are technical people, and have no business experience at all. The ones who know how to operate a business are running their own business and not looking for jobs. Simply put, you have to explain exact outputs to them, not user stories.
GOOD VS BAD FEATURE REQUEST
Good Feature Request
Leaves No Room For Developer Interpretation
- Create a page where I could send invoices to my clients.
- Invoice contains client name, amount, and due date
- Allow me to Create/View/Update/Delete Clients
- Allow me to export invoices as PDF
Bad Feature Request
Assumes Developers Have Experience In Your Industry/Role
- Add an invoicing feature
- Manage our clients
- Build something better than our competitors
- Must work flawlessly
EXPECTING DEVELOPERS TO JUST GET IT CAN LEAD TO CATASTROPHIC RESULTS
HOW NASA LOST $327.6M DUE TO A SIMPLE BUG
DECEMBER 11, 1998
NASA Launches Mars Climate Orbiter to study the Martian climate. Project Costs $327.6M (Wikipedia)
SEPTEMBER 23, 1999
At 09:00:46 UTC, Mars Climate Orbiter went out of radio contact when the spacecraft passed behind Mars at 09:04:52 UTC, 49 seconds earlier than expected, and communication was never reestablished
CAUSE OF FAILURE
One of the software developers failed to make a conversion from English to metric units properly. This could have been prevented by not assuming that developers just “bet it” and ensuring they have processes in place to make things happen.
LESSONS TO LEARN
While you might not be sending rockets to space, a simple software mistake can become to be a costly endeavor for your business.
What to do about it?
Have automated and manual processes in place that prevent costly mistakes from ruining your business. Emphasize critical areas (Payments, Sensitive Customer Information…)
CONSEQUENCES OF NOT HAVING A PROPER DEVELOPMENT PROCESS
Your team is very slow on releasing new features
Even simple features like adding a form to a certain webpage, or changing the design of a page will take ages to implement. If you try and pressure your developers into working faster, they will most likely come up with a list of technical excuses that you have no technical background to assess.
If you try and pressure them more, they will start releasing faster, because they don’t wanna lose their jobs. However, you will quickly notice that new releases become very unstable, and bugs will be more common than ever.
Over the course of time, your software will have a reputation of being buggy. Even if you build the most stable system on earth, it’s very hard to undo a bad reputation. The faster you fix your process, the more customers you retain and acquire due to word of mouth.
Competitors take your market share
More than a decade ago, Microsoft owned technology. Every human on earth operated a Windows machine, and used the MS office suite. Today, Google, Apple and Facebook dominate the web, and Microsoft is simply watching.
Sure, their inability to penetrate the mobile market was a main reason. But have you ever considered why their loyal customers even considered using competitor devices? Because their own devices sucked. Every microsoft release was full of bugs, until they released a service pack to fix them. Their development process lacked a proper quality assurance check. Hence, their clients became their beta testers, and the pain of using their software was huge.
Clients stuck because they had no other option, up until Apple came with neat software that just works. Guess who’s winning the technology game now? With that in mind, you want to become the next Apple, not Microsoft.
No one taking responsibility of problems and fixing them
Real Life Scenario: Ted was running a very thriving business generating 7 figures per year. His developers were pretty good, and in particular he had one rare breed on his team whom he paid a small fortune. However, his site was unstable all the time. He wasn’t able to understand why, even though he had the best people.
When we came in, it was very easy to spot. Without a proper process in place, they were all overwhelmed. Here is what typically happened at one moment:
- Ted asked for an urgent feature request. The team dropped everything and started working on it
- Ted’s amazing marketing efforts paid off and he tripled his website traffic overnight
- Google introduced an algorithm update that required urgent attention.
At that point, the team was dealing with 3 critical issues they can’t ignore, but due to lack of process, no one knew how to handle all 3 at once, and the business lost lots of its customers as a result.
FREE UP YOUR TIME BY EMPOWERING YOUR DEVELOPERS
A project management process is basically a standardized way of doing things. Whether you realize it or not, how your developers are doing things now is your process, and since you’re reading this article, it’s suboptimal. Here’s an overview of the framework we use that will free up your time by empowering your developers
Step 1: Planning Meeting
- Define Business Goal, e.g. reduce customer churn rate
- Convert into Tech Requirements, e.g. implement automated recurring payments
- Ask Developers To Estimate Time/Budget
- Start Development
Step 2: Daily Meeting
Schedule A Daily Quick Call With Developers. Ask each these 3 question:
- What have you built since our last meeting?
- What will you work on till our next meeting?
- Is there anything blocking you from doing your work?
Step 3: Demo Meeting
Once features are built, schedule a demo meeting with your developers.
- Developers present what they have worked on since the planning meeting (see Step 1)
- You provide feedback based on their demonstration
- Improvements are carried over to the next planning meeting
Step 4: Rinse & Repeat Until You’ve Reached Your Final Product
IDENTIFYING YOUR TEAM GAPS & HIRING THE RIGHT PEOPLE AT THE RIGHT BUDGET
In the previous section, we helped you optimize your development process. In this section, we help you put the right people in the right seats.
The people that should be present on every development team
What: Ensure that the team is delivering new releases on time and on budget. Manages day to day operations
Who: Founder in early stage startups, dedicated person in growing startups
What: Writes code
Skills: Depends on your platform . 3-4 yrs of experience minimum
Characteristics: Detail-oriented, organized
What: Manages your servers and your whole infrastructure (Cloudflare, AWS…).
Skills: Managing sites with 1M+ visitors/month
Tip: Do not assign this task to your developers, they will mess it up
User Experience Designer
What: Builds your designs with your business goal in mind
Skills: User interface design, customer journey, heatmap assessment…
Tip: Main focus should be on end result not technical requirements. Customer focused not prodcut-focused.
What: Ensures your software is bug-free
Skills: Manual and automated software testing
Characteristics: High emotional intelligence as developers might become defensive when bugs are discovered
What: Prioritizes features that affect your bottom line
Skills: Understands your business and is able to communicate with developers using technical jargon
Who: Someone involved with the business side of things, preferrably marketing while knowing how to code using one programming language at least
HOW TO HIRE THE RIGHT PEOPLE AND WHERE TO FIND THEM
Now that you’ve identified the missing people on your team, the next step is to actually hire them. There are a number of marketplaces you can find them on. Here are our top recommendations
Despite having to weed through lots of noise on Upwork, you can find some hidden gems at a fraction of the cost you’d find them elsewhere, but you need to have some hiring experience under your belt. It took me over 50 hires on this platform to be able to identify the affordable candidates who are really good, as most are fake.
The beauty about Freeeup is that it eliminates all screening/interviewing and just sends you the right candidates. However, sometimes they miss out. It’s a good website for finding designers, data entry specialists, assistants… However, I wouldn’t count on it for finding my developers, especially for more complex projects.
If you want the best engineers of all time, Toptal is the place to hire them. However, they come at an average hourly rate of $100+ , so be prepared to spend some really good cash. I would not recommend them unless you were building really complex software that no one has ever built.
How to select the right candidate
Now that you’ve posted your job and have applications coming in, here’s how to hire the right one:
Eliminate Incompetent Candidates
- Can’t write proper English
- Have not written a personalized message , but general templates that work on any job, not just yours
- People who refer to you with weird names such as “Sir” , “Hiring Manager”, or “Alex” (if your name isn’t Alex)
- Candidates who haven’t explicitly answered questions you asked
Candidates Faking It
- Too good to be true profiles: An ex-Googler will not charge you $5/hour for building the next generation search engine.
- Candidates who claim to know every programming language on earth
- Candidates who disappear mid-project (look at their previous feedback)
Interview Your Top 3 Profiles
Have A Video Interview
Automatically Eliminate Those Who Disagree. You don’t want to hire Paul from USA while Sandeep from India does the job
Look for confidence, professionalism and good spoken communication
Bonus points if you can assess their body language
Assess how much you “click” with them. Discard anyone you wouldn’t befriend in real life
Present A Real Life Challenge
Ideally, a scenario you are currently facing
Don’t focus too much on the solution, but on the way they approach the problem
Ex: If hiring a software tester, ask for their advice on eliminating recurring bugs
Understand Their Motive For Getting Hired
Why do they want to get hired? Is it because they want to earn a few bucks on the side? Is it temporary until they find a 9 to 5 job? Or do they want to provide for their family and are looking for a long term commitment?
If you’re looking for a long term hire, obviously the guy who’s got a little baby at home and wants a full time job is better than the single, 16yr old wannabe entrepreneur jumping from one idea to another
Trust your intuition
While they might pass all your requirements with flying colors, if you feel something’s off, just drop it and interview the next candidate. Everytime I didn’t listen to my intuition, it turned out to be the wrong decision. Start trusting yours.
Integrate Your New Hire Without Causing Team Conflicts
1. Share Frustrations & Provide Opportunity
Start talking to the team as early as you start thinking about hiring a new employee. Explain your concerns, give them the chance to address them and only proceed with hiring if they can’t solve the problem on their own
2. Explain What's In It For Them
Once you decide to hire, be upfront about it with the team. Explain how having a new hire will positively affect their work. Are they spending way too much hours working on weekends? Perhaps your investor won’t be able to continue funding the venture unless they see a proper team in place?
The key here is to get them excited about the new hire, and see how that improves their lives. This will make everyone’s life easier once the new hire joins
3. Have An Onboarding Process
An onboarding process is a step by step document of items they should go through in order to get familiar with your processes so they get up and running fast. A highly productive new hire will gain his colleagues’ respect quickly.
4. Collect Feedback
Ask for feedback regularly, from both sides. Be transparent in all your communication, and they will open up to you.
Expect to have to intervene every now and then to solve issues, until both parties have gotten familiar with each other’s styles. This should last anywhere from a couple of weeks to a few months.
Assess & improve your team’s Performance
In order to improve your team’s performance, you need to implement performance metrics that you can track and objectively assess each member’s performance. This will leave no room for subjective opinions and personal preferences.
The Staggering ROI Performance Framework (SRPF) is a framework for tracking your goals and their outcomes. When it comes to your technical department, it’s an easy way to track and improve their performance, and ensure they are actually spending their time on the things that matter. While those metrics differ from one business to another, here are some of the standard ones most businesses need
STANDARD METRICS EVERY BUSINESS SHOULD IMPLEMENT
Website Performance Metrics
Implement If Website Performance Affects Bottom Line
- Server downtime over a month (in minutes)
- Average Google PageSpeed Stats
- Database (MySQL , MongoDB…) Response Time
- Cache (Redis, Cloudflare…) Response Time
Mobile Performance Metrics
Implement If Mobile Apps Affect Bottom Line
- New Monthly Installs
- Percentage Of Daily/Monthly Users
- Regular Training Webinars
- Customer Support Forum
EXAMPLE: CREATING YOUR OWN PERFORMANCE METRICS
1. Define Your Goal
Triple Website Traffic
2. Define Your Metric(s)
Take Avg PageSpeed Score To 90%
3. Create Tasks For Your Metric(s)
A. Optimize Backend Code
B. Optimize Server Architecture
C. Optimize Individual Pages
OUTSOURCE ALL OF YOUR RESPONSIBILITIES
So far we have implemented the following
1. Created A Process For Our Development Team
They Are Now Relying On A System To Make Decisions Not On Your Subjectivity
2. Identified Team Gaps And Filled Them
They Have The Ability To Handle All Technical Tasks On Their Own
3. Implemented Performance Metrics
This will help us monitor them without spending time managing them
Now We Are Ready To Get Ourselves Out Of The Equation By Automating & Delegating
Automation VS Delegation
Automation Powered By Machines
Automated Customer Support System
- Chat Service On Your Website Run By A Bot
- FAQ Section
- Video Tutorials
Delegation Powered By Humans
Delegated Customer Support System
- Human Live Chat On Website
- Customer Support Agents (Phone, Email…)
- Regular Training Webinars
- Customer Support Forum
Should I Automate Or Delegate?
Automate everything that doesn’t involve customers. If you want to come across as a personal brand, delegate to real human beings. If you want to come across as a DIY brand, go for automation.
STEP BY STEP TASK OUTSOURCING
Step 1: Analyze Time Spent
Step 1: Analyze Time Spent
- Breakdown hours going towards development team
- Determine which issues are draining most of your time
- Pay attention to stuff that drains your energy
- Pick one you want to outsource first
Step 2: Write Step-By-Step Process
For example, let’s say you waste lots of time guiding your developers when your site is full of bugs after a release. Here are some example steps:
- Monitor customer support email for 3 hours after a release
- Mark the support requests that are actually bugs
- Post on Slack and ask developers to fix
- Followup after 24 hours to ensure it is fixed
Step 3: Assign & Improve Process
- Assign task to someone else
- Improve Your Process Based On Their Questions
- Have 3 People Go Through This Process To Ensure It’s Clear
- Automate The Parts That Can Be Automated To Minimize Human Error
RECAP & MOVING FORWARD
In this araticle, we discussed the importance of project management processes. We helped you understand the bulletproof system for your business, helped you assess your team gaps and taught you how to fill them. From there, we discussed how to make your team more productive by implementing OKRs. Finally, we taught you how to completely free yourself up from technical hassles by creating and managing processes.
In order to implement all of the above, it will take you anywhere from a few months to a couple of years, depending on your familiarity with the tools mentioned above, as well as your team’s ability to quickly adapt to new processes.
If you would like to accelerate this process, schedule a free call with us. We’ll give you some personalized advice based on your current situation. Fill the application form and we’ll hop on a call and give you a list of actionable items you can now implement for some quick wins. The call is totally free, and you’ll get a lot out of it.