Post on 22-Apr-2015
description
NextNY CTO School Fall 2010
Tips & TriXCollection of Random Thoughts
Know when you are in over your head
Tell People, Find Mentors, Reach Out.
Understand Your Domain
Read, Take Classes, learn the domain area you are in.
Your job is to support the BUSINESS
That’s the ultimate way that you are judged – is the technology allowing the business to grow and fulfill its
objectives.
Set Priorities for Team
Your developers have the responsibility to do things right. Your responsibility is to make sure they are doing the right things, which is more
important.
Value of Information
As Co-Founder /Member of Exec Team, you have access to better information about where
business is going. That alone allows you to make technical tradeoffs much better than
even your best developer.
Code Reuse
Plugins, Components, Libraries, Third-Party Software
Understand Key Building Blocks• Content Management Systems• Queueing / Messaging Systems • Personalization • NoSQL Persistence • SOAP / REST / XML Processing • Portal-Like Systems • Authenticatoin / Authorization Systems • Knowledge Systems • Workflow Systems • Semantic Web Technologies • Web Scrapers • Cache Grids
Automate As Much As Possible
Agility is a huge source of competitive advantage over established
companies.
Delegation
Even if you are alone, delegate in clever ways. I.e. managed hosting, virtual admin, oDesk,
interns.
Delegation
• Each task – think through – am I the best person to do it.
• If I am the best person to do it (for many tasks), do I NEED to do it?
• Build capacity over time, with giving larger and larger tasks.
• Have to accept others doing inferior job at times, but you need to set performance standards.
Know (a bit of) Everything
You need to know “enough” abouteverything in your technology.
Use Technology Appropriately
Don’t get seduced by cool technologies BUT
use cool technologies.
Be an Expert in Your StackDo NOT be seduced by the fact that you can be
productive in your platform of choice very quickly. It takes a long time to learn best
practices. Mastery of the platform even more than mastery of the language.
Quality is Relative
Find balance between short-term getting stuff done and long-term technical debt
Prioritize Quality Correctly
• Different definitions depending on your maturity and size.
• If you have no users nobody cares if:– Your app is fast / slow / scalable – Your app is down / up– Your app is insecure / secure
Find the 80/20 Solution
Find the key 20% of functionality that will get 80% of the value. (Eric Ries).
Learn how to Hire
Hiring and spotting talent is a key skill for growing your team.
Get a Life
Remember your startup is not the only important thing; in fact, there are many things
that are much more important
Cultivate your networkFormer co-workers, college buddies,
meetups.
Participate
• User Groups / Meetups• Mailing Lists / Forums• OSS Contributions• Public Speaking• Blogs• Hacker News / Reddit / Digg
• To a Point