Mastering Affiliate Marketing: A Comprehensive Guide to Success
Cloud for-startup
1. Cloud Computing for Startups
Building Cloud Ready Architecture
#4startups,
NSRCEL@IIM Bangalore
Veer Bahadur
Technical Director at Minjar
2. What is Startup?
I feel a startup is an emotional roller
coaster that can either result in
massive failure or success, after which
one's bank account total may either
drastically increase or decrease.
5. "Cloud Computing", by definition, refers to
the on-demand delivery of IT resources
and applications via the Internet with pay-
as-you-go pricing.
Cloud Computing Definition
9. Why Cloud for Startups?
Start small – no CAPEX and pay as you go
Scale fast – zero users to million in hours
Flexibility – choice of infrastructure and
programmability
Think big – go global within minutes
Focus – Do what you do best instead of sys admin
tasks
11. Choosing a Cloud provider
Focus on application needs and business use cases
Go for reliability than fancy features
Native support for technology will be useful at times
Better to have a provider with a good community support
Use a service that can give you free tier – AWS, Azure, Google
etc
Don’t choose a provider because someone said it’s cool
13. Best Practices
Choose what you know – technology, frameworks, libraries
Don’t build if you can reuse – lot of good stuff on github
Don’t over engineer your architecture and keep it simple as it evolves
Learn architecture best practices – infoq.com and highscalability.com
Learn about building multi-tenant applications – Data Security, SLA, Reliability,
Scaling
Performance tuning - focus on code first and config next
14. Best Practices
Try to use add-on services provided by platforms like object store, queuing etc
Decouple your application into different components
Cloud doesn’t solve bad architecture problems
Most of the good technical advice is free on web
Use community to filter choices – stackoverflow, quora, hackernews &
hackerstreet
There is no silver bullet to all problems in technology
16. Cloud Migration
Start with your Dev/QA environment on Cloud
Learn basics about related to Compute, Storage, Networking and
Databases
Get comfortable and gain knowledge – just few days!
Move your application without major re-architecture – no fixed rules
Setup a good monitoring and backup solution
Automate common tasks and program your infrastructure for provisioning
Start re-architecting your application to take advantage of Cloud
Be smart and leverage Cloud – object stores, NoSQL, caching, queuing
etc
18. Best Practices
Customer experience is very important – focus on high availability and
reliability
Go global with distributed deployments based on use cases
Focus on leveraging CDNs and Caching heavily to scale
Use RDMS level read replicas to handle read traffic growth
Leverage NoSQL stores like DynamoDB or BigTable for high volume data
Use an auto-scaling infrastructure to handle spikes in traffic
Have a stand-by DR setup in another region of Cloud
All you need is bunch of smart engineers – instagram, pinterest, airbnb etc
22. Startup Smartness
Choose a cloud provider with free tier
Most providers have a startup friendly programs
Attend a conference or event hosted by provider to gain knowledge and $$
credits
If you are in an accelerator then most of them have tie-ups with cloud
providers
Write an email to their evangelists asking for startup freebies
Talk to friends in ecosystem and architects from Cloud providers for tech advice
And it’s worth paying for a good advice – get some help!
24. Startup Smartness
Automate deployments & focus on continuous integration
Use right tools to troubleshoot issues i.e newrelic and pingdom
Learn best practices early on – web performance tuning
Leverage StackOverflow or Quora to gain knowledge
Do internal hackathons to fix your technical debt
Learn from tech events in local community
Automation helps you save time – you need every bit of it