
How to Develop an App Like Instagram - MLSDev
http://mlsdev.com/en/blog/70-how-to-develop-an-app-like-instagram
======
allsystemsgo
$50.00 an hour? What?

Instagram is _incredibly_ polished. Notice how fast it is? As you're selecting
an image, they're already uploading it to their servers. That is critical to
maintaining and growing their user base. I go to Instagram knowing I can
upload a nice looking photo quickly. The images load incredibly fast as well.
Its simplicity is deceptively robust.

This is not recreated by a developer billing at $50.00 an hour.

So, if you're looking to have an app built, and you're reading this post, just
know it's pretty inaccurate. You get what you pay for.

~~~
eunoia
Contract iOS engineer here, based out of Colorado. My company bills
$150-$200/hour for my time.

> Its simplicity is deceptively robust.

I've met some of the Instagram iOS team. Part of the beautiful simplicity
comes from the fact that FB can afford to pay ~5-7 iOS engineers top salary to
work on improving the app full time. And that's just the iOS app.

~~~
eitally
And if you were in the SFBA, it'd be ++$50/hr on top of that.

~~~
usmannk
What could you expect as a freelancing contractor? Assuming you've previously
done mobile work at a Facebook/Google/Apple/Microsoft tier company.

------
rbranson
The hour estimates are off by at least an order of magnitude.

Not included is the infrastructure necessary to ship something like Instagram
(testing, monitoring, deployment, beta, etc), even if you leave the massive
scale of Instagram out of the picture.

Much more significant is that even the relatively rudimentary 2010-era
Instagram was the result of thousands of hours of polish and refinement after
the initial product was built and released to the public.

There are zero products that go directly from mockups to success. It's
relatively easy to knock off something that already exists and is proven to
work.

~~~
eunoia
> There are zero products that go directly from mockups to success. It's
> relatively easy to knock off something that already exists and is proven to
> work.

Building a knockoff is a relatively linear process. The challenges have
already been solved and the work that needs to be done is clear to all
involved.

Creating a new product is significantly less linear and a lot of budget gets
burned because of that. The time of engineers, designers, project managers and
QA all cost money. Aligning them to the same (non-obvious) vision therefore
costs money. There are additional real costs every time the plan changes even
slightly (scope creep, customer feedback, founder waffling, etc).

"No battle plan ever survives contact with the enemy" \- Helmuth von Moltke

------
joeyspn
Or, granted you know how to quickly setup the push certs, and deploy a simple
docker container with parse-server to AWS Beanstalk, you could launch a MVP
(iOS, Android) in one afternoon, for $49.

[https://market.ionic.io/starters/photogram-ionic-
instagram-c...](https://market.ionic.io/starters/photogram-ionic-instagram-
clone)

~~~
Kluny
To bake an apple pie from scratch only takes an afternoon too, after you
finish creating the universe.

~~~
shanemhansen
Driving to the store doesn't always require building a road.

------
phonon
Well, they had 2 engineers till they hit 30 million users, and 6 engineers
until they hit 150 million.

[http://www.slideshare.net/InfoQ/how-a-small-team-scales-
inst...](http://www.slideshare.net/InfoQ/how-a-small-team-scales-instagram)

------
JustSomeNobody
This reads like something a freshman college student would write.

You're not going to scale to an 80 million pics per day service[0] on a
$10,000.00 backend.

[0] Instagram is not an app, but a service.

~~~
GVIrish
It's not supposed to scale, this is an article about the cost and time to
build a MVP.

------
partycoder
The estimates are for a "functional prototype", which is, the implementation
of ONLY functional requirements. Non-functional requirements are not mentioned
here, and in the case of Instagram, there are many.

Then, since Instagram is a service, you need some sort of operations team to
manage and monitor the infrastructure. You will also need some sort of testing
(quality assurance, performance and scalability, security...). Then you will
need some degree of organization to accomplish this.

Additionally you will need some visibility and minimal critical mass of users
to get the ball rolling (aka user acquisition). That is of course, not
development, but this is one of the most expensive items, to the point that
for some apps, development costs are marginal compared to user acquisition
costs.

You might get a software with the Instagram user-facing features, but don't
expect to be able to handle the volume of traffic that Instagram does, at the
level of security they do. That last part is actually a key aspect of the
business model that I couldn't found anywhere in the article.

------
CodeSheikh
Definitely going to need an estimate of testing hours. Trusting devs with
testing is like estimated hours times 2.

------
bluedino
Testing is free, apparently.

~~~
drinchev
Hmm. Do you actually need full-blown tests for MVP?

~~~
CameronBanga
How else would you know that your MVP actually worked?

~~~
drinchev
Person doing QA ( The client himself can even do it ) + small test suite for
critical operations.

IMHO MVP means a product that users can use, but not full-blown scalable
platform.

~~~
jnettome
IMHO MVP means a product that users can use, but not full-blown scalable
platform. [2]

------
zhuxuefeng1994
Why does it take over 40 hours to implement features, which have been
implemented for millions of times and have existing solutions and code in the
Internet. Authorization (Social and Email) seems to be one or two hours of
work with existing solutions.

~~~
fredoliveira
And you think you can build a great integrated experience that just works with
multiple platforms in "one or two hours of work"? Am I right in assuming that
you never built systems like this?

~~~
zhuxuefeng1994
why not? There are lots of existing scaffolding having authorization setting
up using passport
[https://github.com/jaredhanson/passport](https://github.com/jaredhanson/passport)

You don't even need to write code if you use
[https://github.com/rethinkdb/horizon](https://github.com/rethinkdb/horizon),
firebase, or similar services.

For client side, you can reuse previously written code for authorization logic
and just write user interface based on requirement.

40 hours are too much for such work

~~~
Skilleen
I agree, according to the article, the front end of "email authorization"
takes the most time to do. For an MVP a login system really just has to work,
and then you can personalize it more as you go. Most of the time for an MVP
should be dedicated to the main features of app. (In this case uploading
pictures, news feed, etc).

For my app we used Auth0 to quickly get login working before we had to present
it. It took about total 5 hours to set up and test. Since then we have built
our own login system and made sleek looking create/login screens; which in
total took about ~15 hours.

------
eva1984
The backend estimation is laughable. I don't think the author really
understand what he/she is talking about. For example, search. Having a search
functionality is one thing, having a usable search is completely a different
thing.

------
WWKong
Most people have an idea for a great app that they keep playing in their head.
But these ideas never come live because either they don't have the expertise
to build it themselves or they don't want to drop $12K just to see if users
want it. How much will you be willing to pay for the MVP of you idea? (I have
lined up a reliable team who can deliver most MVP app in 6 weeks at around
$3800. Need validation for the price point).

~~~
Cshelton
I want an app that aggregates commercial loan data from across the industry,
which is un-standardized, and creates a deep learning platform with a public
api that can tell a customer what his individual risk is for both sides of the
party in regards to underwriting, processing, and securitization. Based on
real time market data and regional inputs. Also taking into account who I've
done business with before and relationships.

How much would that MVP cost me?

(hint: $15 million)

~~~
WWKong
The team will politely refuse to take this on. And maybe suggest a Snapchat
clone :)

The last few app requests were: Tinder for shopping, QR code generator and
scanner, chatroom app etc.

------
Xyik
Thank you! i'm so glad someone did a post like this, maybe finally we can stop
having people say things like 'oh i can build an MVP of Twitter / Instagram in
a weekend, its just a photo sharing app'. No. There are a LOT of little
features that need to be considered and they all add up (authentication /
settings / notifications / mentioning etc etc).

------
SurrealSoul
Very real answer to when friends and family ask "how long will it take you to
make [ENTERPRISE APPLICATION CLONE] but with xyz for me"

------
nautical
I found that very relatable as we recently made an app close to instagram in
UI sense and with couple of features plus minus in react native . The
app(react native) and backend(express) were written by me and including
everything took easily ~10-15 days more as predicted by the author .

~~~
ianpri
How did you find react native? Did you learn on the job? Wanting to take the
dive but some articles seem to mention RN's teething pains

------
kevinherron
This is delusional.

------
btbuildem
There is no way someone would build an MVP this involved. Think of what
Instagram launched as, then you're a bit closer.

They say hindsight is 20-20, this guy is going at it with a telescope..

------
mikelbring
Why is messaging on Android estimated at less time on the top? The other
estimates are the same.

~~~
DDickson
I can't speak for iOS development, but Google cloud messaging is dead easy to
implement. Firebase messaging, even easier.

------
Cshelton
Clearly the article is by some dev shop and anybody who has worked on an app
with the scale of Instagram, or even a fraction of Instagram's scale, knows
that this entire article is misleading. If you wanted to actually create
Instagram, as it is Today, it would be an incredibly large undertaking.

