Skip to main content

Startup mistakes: Stumble, fall and learn from it

In this post, I will talk about my thoughts on my startup experience, some lessons learned as well skills gained.

Why Startup?

My startup was my initiative after the tragic life event where I nearly died and had a brain injury i.e. my accident. That moment was a bit of an eye opener for me, I realised that “life is not short but it’s very unpredictable”, hence if I need to do something, it’s either now or never. Having my own company was something that I had always wanted to do but for some reason, I kept pushing it back. So after my accident, it was either now or never for my startup. You may think that I would have made an impulsive decision and quit my day job (still had it after accident), however I did not. Despite, my world falling apart around me (marriage plans cancelled, breakup, cannot walk etc etc), I did not loose foresight. I knew starting my own startup would mean that I wouldn’t have any stable income for some time. Hence I did not quit my day job as a full-stack developer but kept working for another 17+ months. Why so long? well….
  1. I wanted to save up money to support myself while I establish my startup
  2. I really enjoyed the project I was working on ☺️ The work was on a large codebase for a system that did Geospatial visualisation i.e. real-time mapping of various entities in a mine site, awesome! That codebase was massive and it presented an incredibly fun debugging challenge! Very often, I had to debug 50,000+ lines of code for external libraries that we didn’t write but were a part of the project 😌
  3. The project was great but the company environment, for me personally was terrible at the time, I hated it so much. I hated it but I know it was nothing personal and I loved the project so I kept going for as long as I did. I am still in touch with and on a first-name basis with my former managers
After I quit my job and got onboard my startup, it’s been a tough and a downright depressing journey (sometimes). One of the reasons, for it would be the fact that I am not a business person? or I wasn’t and lacked a clear vision for my startup early on. I have 2 degrees, both of which are in computer science and that too hardcore computer science, with research in Artificial Intelligence and image processing (computer vision). So naturally I had no idea about how to run a business or business models of the app world such as paid, freemium, paymium etc. Anyway as the years passed, I stumbled (a lot) and learned a lot of things along the way. This year, has been somewhat better than the years before, we are seeing an increase in revenues, the user feedback etc. However,

The last few months…

they have been more challenging and people around me (actually not those who know me very well, yet) keep insisting that I should go work for someone (which I intend to but more on that later). Working for someone would mean, I would earn some good fixed income, yes! I realise this quite well, but doing this startup was my choice, no one forced me to do so, I willingly quit my day job as a full-stack developer to pursue this. I simply didn’t want to turn 40 and feel “ohh I should have done that when I was younger”….nope! Seriously, that was my original intention, however in the last few years, I have gained a ton of new skills and learned so much about myself. More on this later too….
For me personally, it’s a little sad to realise that “certain people” close to me have such little faith in me. Rest assured, there’s a plan in place for the startup journey and a product plan that leads all the way back to working for someone. I could share my product roadmap and return to a day job plan here but not now.
Before going into the startup world, people told me the startup journey is difficult, but I don’t think I fully understood what they meant. I now realise that it’s not just about working with fewer resources or wearing many hats, it’s also about being surrounded by people who keep doubting your decision to do so.

Lessons learned

After the first year of my startup, I tried to expand and in hindsight I  was trying to expand too soon. We moved to an incubator space and I decided to hire some interns and some freelancers for short one-off work. At it’s peak, my startup, had 6 other people working with me at the same time. I know now that it was a mistake, I should have just focused on my strengths and maximised the use of my core skill i.e. software development and pushed forward software wise to increase revenues, so I can hire full-time employees.

New Skills & Perspectives

Product as a whole! One of the main takeaways for me from my startup journey is that I am now able to see the product as a whole, instead of just the code behind it. I mean, back in the day, it was all about writing perfect code but now the thought process is more about thinking of what a particular piece of code will do for the users. As in what value would it bring to users?
Marketing plan! Also, once we add something, how do we let people know about it? How do we let people know that a feature like “so and so” exists. This generally involves setting up a marketing plan to go with the release of a new feature.
App Usage Analytics! As of late 2016, we started seeing a download surge in My Day To-Do, which prompted a shift in focus usage Analytics. I setup a framework that tracks how users user our app, so we know things like what do they do with the app or what their user journeys is. This helps me identify, whether or not they are using certain features in the app as I want them to. If they aren’t, it could either be because, a) they don’t know the feature exists b) they know but they don’t find it useful.
Adaptive! Now more than ever, I am very comfortable to ever changing business needs and can adapt fairly quickly to new situations
Task Delegation! I have had MBA grads, language students as well as programming interns work with me, so effective task delegation was a key requirement.
iOS Comfort & Android Platform! I have released a number of mobile apps for both iOS and Android so far, you can see them here. Ohh and I could finally use some of my academic research knowledge as I have released AI and image processing apps for iOS.
….and a few more but including all that would make the post too long.

So why go back after learning so much?

The short answer is, I want my Sundays. Yes, having a startup is a huge commitment, I often find myself spread to thin and this year I intend to focus on other aspects of my life, so I want my Sundays. I work 7 days a week and I don’t see this changing anytime soon, therefore if I work for someone else, I will probably have some human rights and at least Sunday off (🤞)
p.s. I have a sense of humour, too bad if you cannot appreciate it.

Summary

So there it is, an summary of my startup journey
As usual, if you find any of my posts useful support me by buying or even trying one of our apps and leave us a review on the app store.
My Day To-Do - Smart Task List
Developer: Bhuman Soni
Price: $2.99
Snap! I was there
Developer: Bhuman Soni
Price: $0.99
Captain's Personal Log
Developer: Bhuman Soni
Price: $4.99
You can see a full list of my apps here, try them, leave a review and show some love 🙂 

Comments

Popular posts from this blog

Upload to AWS S3 from Java API

In this post, you will see code samples for how to upload a file to AWS S3 bucket from a Java Spring Boot app. The code you will see here is from one of my open-source repositories on Github, called document-sharing. Problem Let’s say you are building a document sharing app where you allow your users to upload the file to a public cloud solution. Now, let’s say you are building the API for your app with Spring Boot and you are using AWS S3 as your public cloud solution. How would you do that? This blog post contains the code that can help you achieve that. Read more below,  Upload to AWS S3 bucket from Java Spring Boot app - My Day To-Do (mydaytodo.com)

Addressing app review rejections for auto-renewing subscription in-app purchase (iOS)

The ability to know what the weather is like while planning your day is a feature of  My Day To-Do  Pro and as of the last update it’s also a part of the  Lite version . Unlike the Pro version it’s an auto-renewing subscription based  in-app purchase (IAP)  in the Lite version. What means is that when a user purchases it, the user only pays for the subscription duration after which the user will be automatically charged for the next period. Adding an  auto-renewing  subscription based IAP proved to be somewhat challenging in terms of the app store review i.e. the app update was rejected by the App Review team thrice because of missing information about the IAP. Therefore in this post I will share my experiences and knowledge of adding auto-renewing IAP in hopes to save someone else the time that I had to spend on this problem. In-App purchase This year I started adding IAPs to My Day To-Do Lite which lead to learning about different types of IAP...

Serving HTML content in an iOS app that works in iOS 7 and later (using Swift)

As I have mentioned in an earlier post , I really enjoying coding in Swift. Now what am I doing with it? Well I am trying to build an HTML5 app that must work on devices with iOS 7. So in iOS8 apple has introduced a whole bunch of features that facilitate easy communication between web content and lets just call it back-end Swift code, but those features are not in iOS 7. So why do I want to build something that would work in an older OS? well I do not expect existing iOS users to upgrade to iOS 8 straight away and i also know a couple of people who would be very reluctant to upgrade their iPhones to iOS 8. Now in case you do not, you can have a read of the "Working with WebViews" section of this post , to know how to serve HTML content with WebViews. So when I started building my app, I wanted to know: How do I invoke some Swift code from my HTML content? Well the solution to this may feel a little bit "hacky" but it is a solution to achieve this.  The followi...