You are on page 1of 36

TECH STARTUP CRASH COURSE

HOW TO MANAGE YOUR TECH TEAM


BEST PRACTICES OF SOFTWARE DEVELOPMENT
AND OUTSOURCING

Frederic Joye
Quick intro

• Born in Lausanne, BSc in Business Administration and Development

• Worked in the finance industry for almost 10 years, setting up operational IT and non IT teams for strategic projects
(M&A, reorganizations)

• Consultant for a Portfolio Management System, analyzing financial and software performance for Top 10 Private
Banks in Switzerland and USA.

• Moved to Hong Kong to working on an e-commerce venture selling virtual assets, managing parts of the operations
and relocation of the company to the Philippines.

• Co-founder of Arcanys with 120 people in the Philippines (including 80 developers) and Arcanys Labs, partner with a
VC for investments up to USD 200k+ in cash & services. Handled over 200 tech projects.

• Invested in 6 startups (CH, UK, TH, AUS), FinTech Fusion, Swiss Fintech Association Mentor

• Collaborating on 1 NGO in early education in Cebu (arcanysfoundation.org)


Why this topic?

• Since 2010, worked several hundreds of teams

• Help companies with their core teams

• Repeatable success
2 Elements to deal with in technology

&

People Processes
People / Roles
• Graphic Designer/UI/UX
• Business Analyst
• Frontend Developer
• Backend Developer (backend + front = full stack)
• Infrastructure (dev + infra = DevOps)
• Architect
• Tester
• Project Manager
• Product Owner
Processes

• Managing requirements
• Working with lean software methodology
• Estimating the features
• Creating an architectural design
• Managing the team
• Don’t forget testing
#1 Cause of project failure / delays

Mismanagement of specifications
and business requirements
1. Who do you need when
working on requirements?
• Graphic Designer/UI/UX
• Business Analyst

• Product Owner
• Potential User (Optional)
1. Example of UI/UX design and
requirements document

Mobile App Documentation of


Prototype Sample Requirements
2. Validate design

• Get all decision makers to agree on design


• Optional: get feedback from a few potential users.
• Watch out for scope creep. Decline most ideas and stick
to core functionality.
Be careful with
lean software methodology
2b. Clickable prototype (optional)

HTML/CSS Prototype
3. Estimate development time
(2 largest cause of delays)
nd
3. Time estimation is for
alignment and prioritization

• Product team verifies user stories and confirms this is what


they need

• Prioritize functionalities into Phase 1 (MVP) and “Phase 2 and


Beyond”
3. Architectural design
4. Ramp up your dev team

• Scale from founders to 3-5 developers and


crank it out in 2-4 months.
v
• That’s when outsourcing can be most
useful. Add more developers to your
founding team and reduce team size after
initial launch.
4. Watch out for project managers
4. Use project management tools

• Stay organized, reshuffle tasks, plan sprints

• Don’t just use Skype, emails = Messy

• Jira, Asana, Trello


5. Best practice – add in a tester

Write Test Cases

Execute Test Cases

Write Bug Reports


6. Push your product to test users

Watch them use your software

Fix what doesn’t work until you get


stickiness
Outsourcing best practices

Be mindful of cultural differences

Interesting book on cultural differences – When Cultures Collide


amazon.com/When-Cultures-Collide-3rd-Leading/dp/1904838022
Outsourcing best practices

Avoid fixed price projects


Outsourcing best practices

Don’t build your site on a proprietary


framework of your software provider

Don’t build simply on technology that your


provider (or internal dev team) is
comfortable with (find out market
popularity for future handover)
Outsourcing best practices

Have access to your source code in your


own repository. (e.g. Github or Bitbucket)
Outsourcing best practices

Put in clauses to keep your team members


Outsourcing Best Practices

Implement daily and weekly reports,


and use project management software (e.g.
Jira, Trello, Asana, PivotalTracker –
Our pick : Jira)
Outsourcing Best Practices

Have a high level architect involved


To-do for coding CTO

• Establish coding standards early

• Do frequent code reviews

• Coach & mentor your developers


The costs of a delayed MVP are
enormous

• Dev team costs

• Founding team costs (unpaid salaries)

• Time to market cost


• Missed revenue

• Competitors catching up (that can kill your startup and chances of future raises)
The costs of a delayed MVP are
enormous (2)

• Don’t try to build the best product in the world and fine tune it over
and over.
• Some product people can be like that (don't be a perfectionist)

• Some developers can be like that (constant “refactoring”).

• If you are not embarrassed by the first version of your product, you’ve
launched too late. –Reid Hoffman
Do things that don’t scale

• paulgraham.com/ds.html

• Examples
Inspiration

• Blitzscaling Series on YouTube


• Building an evolving product and hiring developers
over time:
• Blitzscaling 10 (Survey Monkey CTO)
• Blitzscaling 11 (Stripe CEO)
• Favorites are 01, then 07, 08, 09, 10, 11, 12 and 15, 16, 18, 19
Inspiration

• Steve Blank – Customer Development Process

• Books
• Elon Musk by Ashlee Vance
• Disrupted : My Misadventure in the Startup Bubble
Thank You!
Frederic Joye
fred@arcanys.com

www.arcanys.com/labs
www.arcanys.com/docs/Arcanys_Portfolio.pdf

You might also like