Interest does not mean shit, turnover is the only important indicator. The difference to gt somebody to go from excited to hand over money is day and night.
Nobody cares about how cool the code is. Nobody cares about how pretty the application is. Those are side issues, does it solve a problem that people are willing to pay to get solved. Excel solves many problems and people are already paying for it.
Your application/idea is not as unique as you think it is.
Disruption and innovation are words that have little meaning these days, most of the time one is trying to improve a process or business, that does not equate disruption/innovation only improvement. Improvement is a good thing.
There are going to be hard days, acknowledge those. Know that everyone who is trying it on their own has those days. Most people don't show them to the outside world it does not mean they don't have them.
My one thing: The software business changes faster than you think, especially when you're young and your frame of reference regarding time is so short. Just when you think you're hitting your stride and the business is cruising, that is when you should be working on your next big thing. If you don't, you're going to find yourself "out of the game" pretty quickly.
This is excellent advice. As a startup with some extremely talented engineers we build amazing products but if no one knows about it, then you've got a bigger problem.
I can't speak highly enough about http://tractionbook.com/ which I recently came into - it has pragmatic advice on marketing approaches and systems justifying with real data how and why to do what.
It's co-written by the DuckDuckGo founder, and as an engineer who is thoroughly tired of marketing "hackers" who justify expensive campaigns with hand-wavy nonsense, this book changed the way I view marketing in general.
A lot of the reviews are positive about the first 2 chapters, but complain that the remaining chapters lack depth. I would like to own a good marketing book for techies written for this age, but I like to see concrete advise.
This book is great. First few chapters outline the general framework and give you the overview of strategies("traction channels"), and the remaining chapters just explore each strategy in more detail.
Definitely worth buying even for the first two chapters.
I found out pretty soon that setting up a successful software development business only receives 20-40% of your time developing software.
Business, like developing software, is a strict discipline, and there is a vast amount of knowledge that only comes from experience.
I found myself trying to do everything, until a friend taught me a clever trick:
1) Write down all of the tasks you have to do on a daily, weekly and monthly basis.
2) Write a short paragraph for each task's job description.
3) Write a job application from yourself for each of the jobs.
4) Contemplate why on earth you would ever hire _you_ for the job!
My advice is to work out exactly what tasks there are in running your business that you are not an expert at, such as accounting, sales and marketing, copy writing, etc. and hire people to do those parts for you. You'll see a return in no time... unless you don't... in which case your business model would never work.
For anyone who's interested in more advice like this, your friend's trick almost certainly originates from Michael Gerber's book The E-Myth [Re-visited]. Highly recommended reading for anyone starting a small business.
1. Your idea and your software will probably not be aligned to your market needs at first;
2. Go out and talk to your customers;
3. Do not just focus on code;
4. When your customer really needs something that is not in your software, do not hesitate to bill this customer for special developments: it will finance the feature for all your customers and keep your feet on the ground;
5. CIO are overstretched by sales rep, so B2B sales cycles can be really long (at least in France).
Disclaimer: CEO of a French Cybersecurity software company.
French market is known to prefer service over software and "On Premise software" over "SaaS". As a result, we switched from SaaS mode to On Premise, and we started with Penetration Testing to join the end of the month.
While my advices might not be the best, we are in our third year of business and should finally reach profitability :)
The best advice I've had (and seen applied in practice) is this:
You need to get your company to 10k USD monthly product revenue within three months. If you can't, either the product, target market or team needs to be revised drastically.
It's hard advice to follow, but it will save you a lot of time because you can't wait months and years doing unessential tweaks to the product and marketing, hoping that sales miraculously grow.
It's also useful as a pricing yardstick early on. If you have very few customers, they need to be paying enough that you reach $10k almost immediately. If your product isn't worth that much, then you need to scale out. It's best to figure this out right from the start.
If it feels like you can't do $10k MRR in three months on your own, then you need to find a cofounder who can do it together with you... So it's a good way to calibrate cofounder expectations as well.
Pitching? I don't know if there's really anything to pitch here. It's the kind of thing I've been told over lunch a few times, and seen happen in practice. That's all.
From product launch. The point is to launch something that you can imagine selling $10k/month; that you have some kind of plan how to get to that level of sales; and that you'll hold yourself accountable after three months if it fails (and figure out what to do next, not just stick to the thing that wasn't working).
$10k MMR sounds like a lot of money, but it is not. Most people who have never run a business fail to realize how much overhead there is - costs that the business has to pay that isn't labor or obvious materials. If you make a widget from iron it is easy to calculate the cost of the iron in the widget. Did you ever consider how much toilet bowl cleaner is in each widget though, what about your time to clean the toilet? (once you are making more money you pay someone else to clean the toilet, but you still have to account for your time checking that they actually clean it) $10k MMR sounds like a lot, but after overhead I would expect it would give you the equivalent of $50k/year in salary - I think most people reading this make more than that.
To answer your question: The day all your other investment dries up in the worst case. If you have no job or savings you can probably live 3 months on things like your credit cards and not paying the landlord - after those 3 months you better have enough income to start paying your personal debt. That is you need to send the landlord a check for at least 1.5 months rent and with a promise to pay the rest off soon. Likewise you need to be able to buy your groceries with cash and pay down the credit card dept you ran up. It should go without saying that in those 3 months your personal bills should be just enough to stay alive.
Note that the above is the worse case. If you are in month two of the above situation and realize that you won't make the $10kMMR number you should cut your losses, declare bankruptcy and find a day job.
You probably have some savings to live off of though. This means that you have some flexibility. If you are in month 2 and realize you won't make the 10kMMM you can decide if you cut your losses now or not. You have an idea of what your overhead is, who your real competition is and what your leads are (and thus likely future MMR - though don't get over optimistic), if you think things will get better continue, if not cut your losses: you can probably sell to a competitor for a small price and make everyone happy.
If you have investors who are any good at all they have considered your business plan. Sometimes they will insist on the 10kMMR or they will exit, other times they will agree to fund a plan that won't make money for months - but the plan covers that and you have enough income from the investors to live.
There are always other considerations to. 10kMMR is a good number, but you have to figure out how it applies. If your target market is snow plows you should expect your entire income to come during the 3 winter months, and 0 the rest of the year. Thus in winter your MMR needs to be at least 40kMMR, and you need a savings plan of some sort to get through summer.
Don't forget that you can sometimes moonlight. Maybe your ideal is only worth $2kMMR. If you can support this business working only 8 hours a month you keep (or find) a day job for most of your income. That extra 8 hours a month works out to $100/hour after overhead. This again changes the calculations.
This seems really aggressive, especially for bootstrapped companies. My startup took 31 months to hit $10k MRR, and now we're at ~$130k MRR. I'm really glad I didn't quit after three months. I barely even had the product built after three months.
I think that for most people, if they abandon anything that's not already a huge success three months in, they'll just end up bouncing from one thing to the next and never seeing anything through. It's virtually impossible to bootstrap that quickly, and I'd be surprised if many of the big VC-backed startups we've heard of hit that either (certainly not Google or Facebook who weren't even monetizing yet at that point).
I strongly agree. Let's do the math: With a brand new un-proven product with an unproven pricing model, how many customers does it take to get to $10K MRR? In three months, how many qualified leads can you find and reach, and what percentage of those will close? (with an unproven product in an unproven market, 2% is probably a realistic estimate).
Of course there are scenarios where $10K MRR is possible quickly, but there's no way that is what most successful software businesses look like in 3 months.
It's certainly not a hard goal -- I wouldn't pretend that even SaaS businesses are all that similar. (The degree of reassessment after 3 months is up to you, after all.)
It's really a way to frame the product launch by forcing you to ask hard questions about what you're doing. If you don't even see a way for the product to reach $10k/month with a short-term plan, maybe it's a side project rather than a startup? Or maybe the product niche is too vague or unprofitable, and you need to work on that first?
Yes, but no thanks to myself. I wasted about a decade being a crap entrepreneur that didn't have such goals. It was easy to rationalize spending time on the work I liked doing under the pretense that I was improving the product's fundamentals. In retrospect, I would have been much better off facing my fears and doing clearly delineated 3-month efforts with revenue targets rather than persisting with products that don't quite work.
I'm still a crap entrepreneur, but I've become slightly better at teaming up with people who can make it happen.
No, but I've been in a startup that got to $10k MRR in under three months after launching the product... And that opened my eyes to what all the talk about the mythical "traction" actually meant.
If it's a side project, that's a different game. A side project doesn't need traction to be successful for its creator.
(I can't edit the parent comment anymore, so a clarification: when I wrote "not a hard goal", I meant that the $10k number is just a rough ballpark -- not that the goal would be somehow easy to accomplish.)
Yeah, while this may be good advice for some types of markets/businesses/circumstances, there's no way that it's useful as general advice, especially not for side projects or small companies that only need to support one person. Getting that initial traction is the hardest part. Quitting after 3 months is silly.
I don't know how much Atlassian made in its first three months, but they are one of the only bootstrapped tech companies to go public in the last 2 decades. It took them 15 years. While this is not necessarily the fastest path to success, I 100% believe it deserves immense respect. They're one of the biggest success stories in tech as far as I'm concerned.
(Of note, Atlassian has mainly focused on enterprise markets)
I think $10k MRR is a good target. It's basically a limit of ramen profitability for a small team of 2-4 (depending on the family etc. responsibilities of the team), plus a little bit of extra to run the business. When you hit that, it's possible to commit full-time without extra financing and you don't run out of your savings.
Generally speaking, I'd say $10k MRR in three months from a dead start is only really doable if your "product" is in large part a service....e.g., a visualization tool for enterprise customers so they can better understand their data sets (requiring extensive setup and bespoke integrations), or something like that.
I'm sorry but I find this advice deeply misguided. Few startups get to $1k MRR in their first quarter, let alone 10X that. Three months is a good timeframe for a first release and hopefully a few paying customers, but this is unrealistic.
Not a one thing, but I would suggest reading, or at least skimming, The Ten Day MBA. Really good overview of everything that goes into running a business. It's dated, but mostly just in the case studies.
I assume your software development skills are second to none and you could apply them to any problem.
You won't get anywhere solving any problem.
Find a niche for what you can offer, and only go forwards once you've saturated that niche. For example, find a specific line of business that you're passionate about and approach them. Get a name for yourself and excel.
Beware the dangers of the green field. It seems to be every developer's dream to have a green field for a project. You're there at the beginning, so you think you can spend the time to make the correct design decisions early on to ensure you don't end up with the kind of technical debt you've seen at the companies you've worked for before. You'll thoroughly enjoy being a perfectionist, refactoring your code to your own idea of code standard bliss. Immersing yourself in code will keep you busy and make you feel like you are doing important work. The thing is, you're probably not.
Build something, get it in front of customers as quickly as you can and get them to pay you. You'll likely need to do this multiple times to get the right product or features that people actually want and will pay money for. Skip anything nonessential at the start. Focus on the key features that customers will pay for. It will feel broken, but it's only broken if you can't get any customers. This seems like obvious advice, but you're a developer, it will be difficult for you not to aim for perfect before you ship.
Know going in that you will probably be embarrassed by your codebase, but it doesn't matter. When you find the right product formula and need to scale, you'll probably need to refactor or rewrite large parts of it anyway. Even if you build it "perfectly".
Whatever you do, don't use this time as an opportunity to learn some new language or framework. Use whatever you are most efficient with - now is not the time to be learning React/Vue/Angular or whatever else you've been wanting to get stuck into recently. If you can build it faster with mostly server-side views, then do that. Don't stress about picking a language or framework based on future problems like how you'll hire a team - worry about getting that far first. If you're a pro with PHP, use PHP - don't worry about others thinking you're less of a developer because you're not using Go or whatever the flavor of the month is.
Oh and keep it cheap and lean. Don't go building out a huge microservices infrastructure that you may never need. Build a simple monolithic app first and host it on a dirt cheap VPS. Once you get traction you can start splitting it out and worry about scaling individual services.
"It seems to be every developer's dream to have a green field for a project."
I've managed at least one developer who was a genius at bug finding and fixing but who was completely lost when given a "green field" part of a the product to work on. I found this out when I "rewarded" him by giving him a "green field" to work on....
It's a skill that can be learned like every other skill. You can take the "in 21 days" route or the MOOC / University course route, or constantly read business articles, Steve Jobs videos, etc.
But some top tips stand out for me over time:
* Talking to people, networking > Not talking to people
* Bug free > Elegant code
* UX > UI
* Simple products that do one thing well > Complex products
* Understanding entire market > understanding some people
* Building brand > Making quick money (for the long run)
* Sleep, exercise & healthy food > late night coding
* Solving your problem first > Solving the worlds problems
* Adaptability, pivoting > Ego
* Knowledge of where the money is > No knowledge of it
* Overestimating cost/expenses > Underestimating it
2009 post, but still one of my favorite distillations of the issues around b2b customer types. Particular impactful if you read it when you end up going above and beyond with support, feature development, and contract negotiations with both rabbits and whales and you're running out of money.
This. When small shops land their first big client they're always so excited. To me it's like having a stone tied around your neck. Big clients can often be more trouble than they're worth and become a financial risk when they send you packing and you've hired extra people just for their account.
Big clients tend to be very slow at signing contracts because their legals would examine every word and will keep asking you to revise the contract. Furtheremore, real big clients tend to be slow at adopting the techology they just bought, so you may not get feedback quick enough to improve your product. Big clients are more likely to argue for discount as they would use "I am big name" as leverage.
This, and sales concentration is a real risk as well. If you have few big customers and even one of them churns, the impact this will have on you is certainly going to be material.
Yes, the strategy for big client is to lock them in for long engagement (like a 3-YR term). Throw in some nice support package, longer trial period, whatever. Since big customers often take months to fully use a product (6-12 months is very common), I wouldn't worry about "oh now I got big name, I need more infrastructure, more money to pay my cloud vendor." It won't for 6-12 months and you probably can keep all the pennies from the big client monthly. If you get a downpayment (say 1-year for a 3-yr term), you get ammunition to grow your team and get more smaller customers.
After four years in which I frequently worked in a 6h/1h work/sleep rhythm for weeks at a time, I just left town and decided to never again have any customer that I couldn't fire and forget about on the spot if I wanted.
Big clients and projects were, at least for me, a complete nightmare. Worst were the lawsuits which, even when we ultimately won, would basically ruin whole years at a time.
Now I'm working for a few thousand customers at maybe $50/year average. When some technology or idea seems interesting, I'll spend 48h straight trying to get it working. When the weather starts to get warm, I'll spend the day in the sun with a bottle of white wine and no appointments until November.
I get some of these, but "don't procrastinate" and "understand the entire market" are kind of ridiculous. You might as well throw "know everything" and "work hard" in there.
Seriously. Your proof that you understand a market is only as good as the frequency that your understanding is tested, whether the test is profits or rote knowledge.
This is true for many things. I'm the best developer as long as I don't compare myself to a better developer.
Also, make sure not to confuse understanding your customers with understanding how the industry works.
Some of the craziest and successful startup ideas come from people who don't understand the industry at all and if they had they probably would have never tried to do what they did.
Survivorship bias. Some of the biggest flops also come from people who don't understand the industry at all, and if they had they probably would have never tried to do what they did.
You can't understand your customers if you don't understand their industry. Picking customers is like investing: if you pick a bunch of customers that are not going to win their industry, you won't thrive either.
That may be true, but it isn't a reason not to try. Heck in the process you may learn the industry, just too late for current venture. It is however a reason to be willing to recognise a flop and abandon it for something else.
Yes, but what I'm actually trying to do is cast suspicion on the dichotomy between industry and customers. Industry is not a thing that exists. There are only people, their objectives, their resources, and their problems. Those are the things that need understanding.
I'm a dev who's starting a business and running up against some of this -- for me 'understand the entire market' resonated.
In my case that means knowing the major datapoints about competitors in my space (public vs private companies, who's making/losing money, appannie stats), knowing everything available about cost of user acquisition, and looking at psych studies on user motivations.
These are things I would have benefited from knowing on day 0 but instead only learned after building a prototype that I had to scrap.
If your business is enterprise focused rather than consumer focused, understanding one or two customers is probably good enough for a start.
I don't think that's what the parent meant: your time is better spent understanding the whole market than a subset, and your time is better spent getting the important trivial thing done now than working on the not-as-important nontrivial thing.
No you are wrong. In order to get there (build successful brand) you have to take care of your self. With coding marathons, buckets of coffee and fast food (because "I don't have time to cook") you will end up with heart attack before you achieve what you planned.
Not only that but adequate sleep, regular exercise and healthy eating contribute enormously towards healthier cognition. As a developer, I tend to find myself far more productive and successful in a shorter period of time when I am living on the healthy side of things. Everything that is me just works better when I go for a run three days a week, eat clean foods and get in a solid 8 hours of rest a night.
getting 3 solid hours of working on your brand a day is much better than 7 bad ones late at night. Wake up earlier, work at lunch, work immediately when you get home. Late nights are not always necessary.
The principle is that you have to maintain health.
I think late-night coding is a near-constant because of our brains automatically optimize us onto what pg describes as "the Maker's Schedule". Context switching is anathema to effective coding, so people automatically go to the time when they'll be least-interrupted, which is when the rest of the world is asleep.
A full time job is a 9-5. Let's say you commute from 8-9 and 5-630. That means you can gym from 645 to 8 (including travel time), eat decently, do some coding, hit bed around 1030, and be sleeping around 11 (so you have enough time in the morning by waking up at 7). Cook on the weekends, code on the weekends, social life Friday and Saturday night...
Do you work more than 40hrs a week? Why? Sounds like you're creating someone else's brand if so.
Let's say you have half of this spare time to work on your side project, that is 3 hours. Excluding weekends, how much time would it take to build a business out of your 15-hours-per-week side project?
Well, typically building a business is a full time job. I'd recommend someone make extra money in their spare time to facilitate a work-break rather than trying to do two "full time" jobs at once.
With exercise, I'm finding cycling to work and lifting weights are effective in terms of time. I spend half an hour of my day getting to work and back - probably about 10 minutes longer than it would take in a car. And with weight lifting, I never do any more than 3 sets of 10. The actual amount of time it takes is short.
This isn't exactly olympian conditioning, but I do notice a benefit and the time investment is low.
You need around 7-8 hrs of sleeping to focus and proper brain functions. Only 3-4% of world people can survive and work perfectly with 4-5 hrs of sleep.
Good advice. Some of these (most?) apply to the business-side founder types as well:
> Simple products that do one thing well > Complex products
It has been my experience that business people constantly make this mistake. They feel a product has to satisfy all needs. The engineers I have met have consistently argued to remove features that are expensive to develop and add little value.
Both of those are anecdotes. Your milage may vary.
I don't think it's accurate if you take it at face value. If you genuinely solve the world's problems, that's a better place to be (business-wise) than having solved your own problems.
But trying to solve the world's problems vs. trying to solve your own is another matter. You probably better understand your own problems.
It means: Solving your problem first > Solving others' problems (that don't affect you). The reasoning is that you are an expert in problems that affect you.
If the problem affects the whole world, including yourself, then it falls in the left bucket.
1) Figure out who you are selling to and what problem you're solving for them BEFORE you build something. It's very easy to fall into a routine of building the best software ever while forgetting you need someone to buy it.
2) Banks will loan you money when you don't need it and won't loan money when you do need it. Apply for a loan or line of credit when you're flush with cash in case of a rainy day.
3) Running a business is a different skill than developing software. Be prepared to learn a lot of new skills.
4) Don't hire too quickly. Payroll + benefits can eat through profits like crazy in a software business. The counter-point is that a good salesperson will bring in far more revenue than they cost in salary and commission.
5) Know your numbers. You should have good accounting records and know from week to week if you are on track or slipping.
6) Don't hire a 'marketing' firm. They will charge 10's of thousands of dollars to ask you questions like 'What do you think we should do?' and then feed it back to you. If the product is positioned well with customers, you know more than the marketing company ever will.
7) Don't let a single customer account for more than 10% of your revenue. If that customer leaves, you'll be in a painful situation. It's difficult to do this at first but it keeps you from chasing a big fish to the detriment of the rest of your business.
8) A good reputation and word-of-mouth is better than buying the #1 spot on Adwords.
9) Figure out how to sell again and again to the same customers. A one time sale makes means a high cost of customer acquisition. Once the customer likes your company you should see what complimentary products and services you can sell too.
10) Once you've had a taste of the freedom (and stress) of working for yourself, it will be very difficult to go back to a regular job and work for anyone else.
> Figure out who you are selling to and what
> problem you're solving for them BEFORE you build something
Prototypes. Powerpoints. Smoke and mirrors. Demos.
Don't build a thing until you have a buyer. A buyer usually is equally happy buying software or watching a powerpoint and buying software that will be delivered in a few months.
Having a customer who has money waiting makes all the other things simpler. Need to rent an office? Tell them you have customers but no money at the moment. They'll figure out a way to get you into that office. Etc.etc.etc.
That it takes industry longer than you expected for it to move on to the next new thing.
I made this mistake in 2012 thinking that my product would no longer be wanted by 2016 and so didn't invest in expanding sales. 2017 has arrived and our sales are at an all time high and I have no idea when the market will start to decline. I lost a huge amount of money getting this wrong.
In my defence eveyone else in our industry thought the same thing and made the same mistake.
Regarding your particular circumstances, is it because sequencing centers are slow to upgrade to the newest sequencing technology (probably because the investment in the last-generation is so large)?
No. It is because the next-gen sequencers just don't do what the old sequencers (sanger) do (sequence small regions of DNA at high accuracy). The new machines can sequence a whole genome, but if you only want to look at small part of a genome then there is no replacement for Sanger sequencing.
Another surprising reason is the OEM manufacturer of the instrument (hitachi) basically over engineered the machines and built a tank. The machines just keep running and running.
- that it's all going to be worth it in the end (it would have been comforting during those 100-hour-weeks)
- Some of that quick & dirty temporary code would be used for the next 18-19 years.
- I might as well have used PHP instead of Perl. Same (bad, messy) code quality, but even faster development and much easier hiring.
- Costly hardware early on was a waste of money (we outgrew it so fast that a beefy desktop PC would have been a saner investment at that point).
- Managing people is the one thing that you can't "fix" permanently. It's always an uphill battle unless (presumably) you're naturally talented/charismatic/psychopathic.
- don't bother with marketing people, advisors, business consultants early on and don't create product dependencies (e.g. by building a specific version of your product for others). It's not worth it until your product is polished and proven.
- Don't hire people carelessly because you don't want to invest precious time. Don't hire friends/acquaintances unless you've seen them working. Firing people is one of the most difficult tasks.
- Bad things will happen. Don't spend too much time trying to prevent them, or worrying to much. Just make sure you know what your options are when you need to put out fires and manage basic info (don't go searching for your hosting provider's phone number when you need it).
The number one thing is understanding what customers want. Every business guru and product person in the valley will tell you to "talk to your customers". The major exclusion there is how you talk with customers. Simply asking people how you can improve your product or being more deliberate and saying "what do you want? If I could add any new feature, what would it be?" is wasted time. These questions feel normal and correct, but they'll lead you down the wrong path. What you instead want to figure out is the contextual situation which has lead your current customer or prospect to you. Figure out what that customer wants out of that product _for them_. That's how you start to build great products.
If you are working a day job as a programmer (while setting yourself up to go down the startup route), go with contracting as soon as you can, the rates are what you set them at and you should always set them high.
The other advice that has been invaluable to me is NEVER EVER reveal your salary to recruiters. Always state what you want to be paid and go from there. When you reveal what you are earning, you are immediately weakening your negotiating position. This may seem obvious but it would surprise you how many people just go along with their very invasive questioning.
OP is talking about a jump to entrepreneurship. Why would an entrepreneur talk to a recruiter about their salary?
If OP is considering a move to contract software development work, your advice could be relevant to OP not offering his/her hourly contract rate to third party recruiters who ask for it, but most independent contractors have an hourly rate because they know the market for their skills.
Any advice on how to transition from a day programming job to contracting? Any useful resources? Where to find contracting jobs/ through agency or directly approaching clients?
Only just noticed this, I guess if you check your comments you can pick this up at some point.
Best advice is do it early, use your usual job sites (Monster etc.). Resources will depend on your country but the only real administrative hurdle is insurance and taxes so you will need to look up what your country's business rules are. Most people tend to set up as a small limited company or something of that nature and then get the necessary insurance and taxes once you actually land your first contract.
- when venting/bitching/complaining, make that clear by saying, "Hey friend, I'm just venting here. <venting> ... </vent>"
- don't run out of money
- don't take money from anyone who can't afford to lose it
- search for ways to delegate & outsource non-essential tasks, but plan on doing them yourself, as you'll find there are somethings you can't offload no matter how much you try
- try to avoid putting yourself in a situation where your business dies if any single person dies/walks/disappears
- assume anything you say to anyone was not correctly heard, and ask them to repeat it back to you
- commit to working in 100% in person, or 100% remotely
- be prepared to have to trust others, and adjust your expectations accordingly
324 comments
[ 9.8 ms ] story [ 876 ms ] thread1) It takes longer than you think/imagine
2) Start smaller, no smaller still
3) Self fund for as long as possible
4) Be positive, stay positive
5) Identify people you can talk to about your work
6) Be honest with yourself, hard/brutal honesty
The product is not as cool as you think.
Cash flow is king.
Interest does not mean shit, turnover is the only important indicator. The difference to gt somebody to go from excited to hand over money is day and night.
Nobody cares about how cool the code is. Nobody cares about how pretty the application is. Those are side issues, does it solve a problem that people are willing to pay to get solved. Excel solves many problems and people are already paying for it.
Your application/idea is not as unique as you think it is.
Disruption and innovation are words that have little meaning these days, most of the time one is trying to improve a process or business, that does not equate disruption/innovation only improvement. Improvement is a good thing.
There are going to be hard days, acknowledge those. Know that everyone who is trying it on their own has those days. Most people don't show them to the outside world it does not mean they don't have them.
My one thing: The software business changes faster than you think, especially when you're young and your frame of reference regarding time is so short. Just when you think you're hitting your stride and the business is cruising, that is when you should be working on your next big thing. If you don't, you're going to find yourself "out of the game" pretty quickly.
A developer with marketing skills can build products and achieve revenues far in excess of their skill set.
It's co-written by the DuckDuckGo founder, and as an engineer who is thoroughly tired of marketing "hackers" who justify expensive campaigns with hand-wavy nonsense, this book changed the way I view marketing in general.
How do you feel?
Definitely worth buying even for the first two chapters.
If you want a TL;DR:
https://medium.com/@yegg/the-19-channels-you-can-use-to-get-...
Business, like developing software, is a strict discipline, and there is a vast amount of knowledge that only comes from experience.
I found myself trying to do everything, until a friend taught me a clever trick:
1) Write down all of the tasks you have to do on a daily, weekly and monthly basis.
2) Write a short paragraph for each task's job description.
3) Write a job application from yourself for each of the jobs.
4) Contemplate why on earth you would ever hire _you_ for the job!
My advice is to work out exactly what tasks there are in running your business that you are not an expert at, such as accounting, sales and marketing, copy writing, etc. and hire people to do those parts for you. You'll see a return in no time... unless you don't... in which case your business model would never work.
On GoodReads: http://www.goodreads.com/book/show/81948.The_E_Myth_Revisite...
On Amazon: https://www.amazon.com/gp/product/0887307280
Thanks for the links, I may actually get around to reading this one soon.
When you leaving the company - you and your partner/partners HAS to agree on a price.
Remember this in your paperwork (where you try to think of all kinds of breakup)
1. Your idea and your software will probably not be aligned to your market needs at first;
2. Go out and talk to your customers;
3. Do not just focus on code;
4. When your customer really needs something that is not in your software, do not hesitate to bill this customer for special developments: it will finance the feature for all your customers and keep your feet on the ground;
5. CIO are overstretched by sales rep, so B2B sales cycles can be really long (at least in France).
Disclaimer: CEO of a French Cybersecurity software company. French market is known to prefer service over software and "On Premise software" over "SaaS". As a result, we switched from SaaS mode to On Premise, and we started with Penetration Testing to join the end of the month. While my advices might not be the best, we are in our third year of business and should finally reach profitability :)
You need to get your company to 10k USD monthly product revenue within three months. If you can't, either the product, target market or team needs to be revised drastically.
It's hard advice to follow, but it will save you a lot of time because you can't wait months and years doing unessential tweaks to the product and marketing, hoping that sales miraculously grow.
It's also useful as a pricing yardstick early on. If you have very few customers, they need to be paying enough that you reach $10k almost immediately. If your product isn't worth that much, then you need to scale out. It's best to figure this out right from the start.
If it feels like you can't do $10k MRR in three months on your own, then you need to find a cofounder who can do it together with you... So it's a good way to calibrate cofounder expectations as well.
To answer your question: The day all your other investment dries up in the worst case. If you have no job or savings you can probably live 3 months on things like your credit cards and not paying the landlord - after those 3 months you better have enough income to start paying your personal debt. That is you need to send the landlord a check for at least 1.5 months rent and with a promise to pay the rest off soon. Likewise you need to be able to buy your groceries with cash and pay down the credit card dept you ran up. It should go without saying that in those 3 months your personal bills should be just enough to stay alive.
Note that the above is the worse case. If you are in month two of the above situation and realize that you won't make the $10kMMR number you should cut your losses, declare bankruptcy and find a day job.
You probably have some savings to live off of though. This means that you have some flexibility. If you are in month 2 and realize you won't make the 10kMMM you can decide if you cut your losses now or not. You have an idea of what your overhead is, who your real competition is and what your leads are (and thus likely future MMR - though don't get over optimistic), if you think things will get better continue, if not cut your losses: you can probably sell to a competitor for a small price and make everyone happy.
If you have investors who are any good at all they have considered your business plan. Sometimes they will insist on the 10kMMR or they will exit, other times they will agree to fund a plan that won't make money for months - but the plan covers that and you have enough income from the investors to live.
There are always other considerations to. 10kMMR is a good number, but you have to figure out how it applies. If your target market is snow plows you should expect your entire income to come during the 3 winter months, and 0 the rest of the year. Thus in winter your MMR needs to be at least 40kMMR, and you need a savings plan of some sort to get through summer.
Don't forget that you can sometimes moonlight. Maybe your ideal is only worth $2kMMR. If you can support this business working only 8 hours a month you keep (or find) a day job for most of your income. That extra 8 hours a month works out to $100/hour after overhead. This again changes the calculations.
I think that for most people, if they abandon anything that's not already a huge success three months in, they'll just end up bouncing from one thing to the next and never seeing anything through. It's virtually impossible to bootstrap that quickly, and I'd be surprised if many of the big VC-backed startups we've heard of hit that either (certainly not Google or Facebook who weren't even monetizing yet at that point).
Of course there are scenarios where $10K MRR is possible quickly, but there's no way that is what most successful software businesses look like in 3 months.
It's really a way to frame the product launch by forcing you to ask hard questions about what you're doing. If you don't even see a way for the product to reach $10k/month with a short-term plan, maybe it's a side project rather than a startup? Or maybe the product niche is too vague or unprofitable, and you need to work on that first?
I'm still a crap entrepreneur, but I've become slightly better at teaming up with people who can make it happen.
If it's a side project, that's a different game. A side project doesn't need traction to be successful for its creator.
I don't know how much Atlassian made in its first three months, but they are one of the only bootstrapped tech companies to go public in the last 2 decades. It took them 15 years. While this is not necessarily the fastest path to success, I 100% believe it deserves immense respect. They're one of the biggest success stories in tech as far as I'm concerned.
(Of note, Atlassian has mainly focused on enterprise markets)
You probably need to add how much you can spend on customers acquisition to your equation.
You won't get anywhere solving any problem.
Find a niche for what you can offer, and only go forwards once you've saturated that niche. For example, find a specific line of business that you're passionate about and approach them. Get a name for yourself and excel.
Build something, get it in front of customers as quickly as you can and get them to pay you. You'll likely need to do this multiple times to get the right product or features that people actually want and will pay money for. Skip anything nonessential at the start. Focus on the key features that customers will pay for. It will feel broken, but it's only broken if you can't get any customers. This seems like obvious advice, but you're a developer, it will be difficult for you not to aim for perfect before you ship.
Know going in that you will probably be embarrassed by your codebase, but it doesn't matter. When you find the right product formula and need to scale, you'll probably need to refactor or rewrite large parts of it anyway. Even if you build it "perfectly".
Whatever you do, don't use this time as an opportunity to learn some new language or framework. Use whatever you are most efficient with - now is not the time to be learning React/Vue/Angular or whatever else you've been wanting to get stuck into recently. If you can build it faster with mostly server-side views, then do that. Don't stress about picking a language or framework based on future problems like how you'll hire a team - worry about getting that far first. If you're a pro with PHP, use PHP - don't worry about others thinking you're less of a developer because you're not using Go or whatever the flavor of the month is.
Oh and keep it cheap and lean. Don't go building out a huge microservices infrastructure that you may never need. Build a simple monolithic app first and host it on a dirt cheap VPS. Once you get traction you can start splitting it out and worry about scaling individual services.
I've written a little more about this on Medium - https://hackernoon.com/shit-startups-do-episode-1-cbfa73f9c2...
I've managed at least one developer who was a genius at bug finding and fixing but who was completely lost when given a "green field" part of a the product to work on. I found this out when I "rewarded" him by giving him a "green field" to work on....
But some top tips stand out for me over time:
* Talking to people, networking > Not talking to people
* Bug free > Elegant code
* UX > UI
* Simple products that do one thing well > Complex products
* Understanding entire market > understanding some people
* Building brand > Making quick money (for the long run)
* Sleep, exercise & healthy food > late night coding
* Solving your problem first > Solving the worlds problems
* Adaptability, pivoting > Ego
* Knowledge of where the money is > No knowledge of it
* Overestimating cost/expenses > Underestimating it
* Patience > No Patience
* No procrastination > Procrastination
* Reading books > Not reading books
Listen to people, figure out what 90% is bullshit or irrelevant and what 10% is interesting business opportunity.
2009 post, but still one of my favorite distillations of the issues around b2b customer types. Particular impactful if you read it when you end up going above and beyond with support, feature development, and contract negotiations with both rabbits and whales and you're running out of money.
Especially at the beginning, you read here how often big clients can put you under at the beginning because you're not ready to deal with them.
A few big jobs > many small jobs
Low-paying jobs will consume more time than you expect. Be careful when quoting these. Always charge more than you think you need to cover your time.
After four years in which I frequently worked in a 6h/1h work/sleep rhythm for weeks at a time, I just left town and decided to never again have any customer that I couldn't fire and forget about on the spot if I wanted.
Big clients and projects were, at least for me, a complete nightmare. Worst were the lawsuits which, even when we ultimately won, would basically ruin whole years at a time.
Now I'm working for a few thousand customers at maybe $50/year average. When some technology or idea seems interesting, I'll spend 48h straight trying to get it working. When the weather starts to get warm, I'll spend the day in the sun with a bottle of white wine and no appointments until November.
This is true for many things. I'm the best developer as long as I don't compare myself to a better developer.
Some of the craziest and successful startup ideas come from people who don't understand the industry at all and if they had they probably would have never tried to do what they did.
You can't understand your customers if you don't understand their industry. Picking customers is like investing: if you pick a bunch of customers that are not going to win their industry, you won't thrive either.
In my case that means knowing the major datapoints about competitors in my space (public vs private companies, who's making/losing money, appannie stats), knowing everything available about cost of user acquisition, and looking at psych studies on user motivations.
These are things I would have benefited from knowing on day 0 but instead only learned after building a prototype that I had to scrap.
If your business is enterprise focused rather than consumer focused, understanding one or two customers is probably good enough for a start.
> * Sleep, exercise & healthy food > late night coding
Looks like it's against other points. I have a full-time job and I'd like to create a brand, too. Thus. I have to do late night coding.
Sounds like someone doesn't have kids.
Mostly tongue in cheek, but also slightly serious. There are plenty of life circumstances that preclude all those things.
I think late-night coding is a near-constant because of our brains automatically optimize us onto what pg describes as "the Maker's Schedule". Context switching is anathema to effective coding, so people automatically go to the time when they'll be least-interrupted, which is when the rest of the world is asleep.
Do you work more than 40hrs a week? Why? Sounds like you're creating someone else's brand if so.
If it is, it means you're probably working too much for someone else!
This isn't exactly olympian conditioning, but I do notice a benefit and the time investment is low.
> Simple products that do one thing well > Complex products
It has been my experience that business people constantly make this mistake. They feel a product has to satisfy all needs. The engineers I have met have consistently argued to remove features that are expensive to develop and add little value.
Both of those are anecdotes. Your milage may vary.
* Doing something you're interested in > all the self-help and motivational quotes in the world
* Doing something potentially meaningful and failing > doing something you don't care about and muddling through
Sorry, what did you mean by "in 21 days route"? Also, do you have any MOOC on doing business to recommend?
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than right now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
Any chance you could expand a bit on this one?
But trying to solve the world's problems vs. trying to solve your own is another matter. You probably better understand your own problems.
If the problem affects the whole world, including yourself, then it falls in the left bucket.
2) Banks will loan you money when you don't need it and won't loan money when you do need it. Apply for a loan or line of credit when you're flush with cash in case of a rainy day.
3) Running a business is a different skill than developing software. Be prepared to learn a lot of new skills.
4) Don't hire too quickly. Payroll + benefits can eat through profits like crazy in a software business. The counter-point is that a good salesperson will bring in far more revenue than they cost in salary and commission.
5) Know your numbers. You should have good accounting records and know from week to week if you are on track or slipping.
6) Don't hire a 'marketing' firm. They will charge 10's of thousands of dollars to ask you questions like 'What do you think we should do?' and then feed it back to you. If the product is positioned well with customers, you know more than the marketing company ever will.
7) Don't let a single customer account for more than 10% of your revenue. If that customer leaves, you'll be in a painful situation. It's difficult to do this at first but it keeps you from chasing a big fish to the detriment of the rest of your business.
8) A good reputation and word-of-mouth is better than buying the #1 spot on Adwords.
9) Figure out how to sell again and again to the same customers. A one time sale makes means a high cost of customer acquisition. Once the customer likes your company you should see what complimentary products and services you can sell too.
10) Once you've had a taste of the freedom (and stress) of working for yourself, it will be very difficult to go back to a regular job and work for anyone else.
Prototypes. Powerpoints. Smoke and mirrors. Demos.
Don't build a thing until you have a buyer. A buyer usually is equally happy buying software or watching a powerpoint and buying software that will be delivered in a few months.
Having a customer who has money waiting makes all the other things simpler. Need to rent an office? Tell them you have customers but no money at the moment. They'll figure out a way to get you into that office. Etc.etc.etc.
I made this mistake in 2012 thinking that my product would no longer be wanted by 2016 and so didn't invest in expanding sales. 2017 has arrived and our sales are at an all time high and I have no idea when the market will start to decline. I lost a huge amount of money getting this wrong.
In my defence eveyone else in our industry thought the same thing and made the same mistake.
Keep it cheap and keep it good.
Another surprising reason is the OEM manufacturer of the instrument (hitachi) basically over engineered the machines and built a tank. The machines just keep running and running.
- Some of that quick & dirty temporary code would be used for the next 18-19 years.
- I might as well have used PHP instead of Perl. Same (bad, messy) code quality, but even faster development and much easier hiring.
- Costly hardware early on was a waste of money (we outgrew it so fast that a beefy desktop PC would have been a saner investment at that point).
- Managing people is the one thing that you can't "fix" permanently. It's always an uphill battle unless (presumably) you're naturally talented/charismatic/psychopathic.
- don't bother with marketing people, advisors, business consultants early on and don't create product dependencies (e.g. by building a specific version of your product for others). It's not worth it until your product is polished and proven.
- Don't hire people carelessly because you don't want to invest precious time. Don't hire friends/acquaintances unless you've seen them working. Firing people is one of the most difficult tasks.
- Bad things will happen. Don't spend too much time trying to prevent them, or worrying to much. Just make sure you know what your options are when you need to put out fires and manage basic info (don't go searching for your hosting provider's phone number when you need it).
. The Mom Test - good and bad questions for customer discovery
. Competing Against Luck - introduces the concept of "jobs to be done" - people are hiring your product for a specific job they need to get done
The other advice that has been invaluable to me is NEVER EVER reveal your salary to recruiters. Always state what you want to be paid and go from there. When you reveal what you are earning, you are immediately weakening your negotiating position. This may seem obvious but it would surprise you how many people just go along with their very invasive questioning.
If OP is considering a move to contract software development work, your advice could be relevant to OP not offering his/her hourly contract rate to third party recruiters who ask for it, but most independent contractors have an hourly rate because they know the market for their skills.
Best advice is do it early, use your usual job sites (Monster etc.). Resources will depend on your country but the only real administrative hurdle is insurance and taxes so you will need to look up what your country's business rules are. Most people tend to set up as a small limited company or something of that nature and then get the necessary insurance and taxes once you actually land your first contract.
But the best article I read some time ago: he said that a man does not need to earn more than 3000 euros per month to be happy.
- when venting/bitching/complaining, make that clear by saying, "Hey friend, I'm just venting here. <venting> ... </vent>"
- don't run out of money
- don't take money from anyone who can't afford to lose it
- search for ways to delegate & outsource non-essential tasks, but plan on doing them yourself, as you'll find there are somethings you can't offload no matter how much you try
- try to avoid putting yourself in a situation where your business dies if any single person dies/walks/disappears
- assume anything you say to anyone was not correctly heard, and ask them to repeat it back to you
- commit to working in 100% in person, or 100% remotely
- be prepared to have to trust others, and adjust your expectations accordingly