Upload
siliconprime
View
375
Download
2
Tags:
Embed Size (px)
DESCRIPTION
A social network that can be customized as per the requirements of the customer and can support 100+ million users.
Citation preview
!WeConnected !
Professional Network!!
11 Team Members!
5 Months!can support 100+ million users
TEAM
1 Architect
1 Team Lead
2 DB Developer
3 Developers
2 Front End Developer
1 Business Analyst
1 QA
5-day Sprint DAY 1 DAY 2 DAY 3 DAY 4 DAY 5
Daily Meeting Daily Meeting Daily Meeting Daily Meeting Daily Meeting
Short Team Planning Meeting
Backlog grooming for next sprint
Team code review
Next sprint planning by product owner
Team Weekly Demo
Daily Build Daily Build
Daily Build
Daily Build
Daily Build
Daily QA Report
Daily QA Report
Daily QA Report
Daily QA Report
Daily QA Report
Midweek QA Report
Weekly QA Report
Technology Architecture Native UI Layer: iPhone, Android, Windows, BlackBerry!
View! Model !
Data Access!
Queue, Push Notification! !
!
Web UI Layer: Responsive HTML 5 & CSS 3 (Twitter Bootstrap)!
View! Model !
Client Data Context JS!
RequireJS, DurandalJS, KnockoutJS, BreezeJS, KendoUI, Socket.IO!
Web API Layer!
Single RESTful API!
MemCache/Redis Clustering Cache Layer!
Business Logic Layer!
Composite RESTful API !(Combine several Single API for performance while keeping single API for clean architecture) !
DB Service API Layer!
Database Service RESTful API!
Aggressive Database Cache layer by MemCache or Redis or Internal Database Cache !
Service Logic Layer!
Clustering NoSQL Database with Automatic Failover (MongoDB, RavenDB, !
20 !
one-week Sprints
Sprint 1
Team of 2 Developers + 1 NoSQL expert + + QA + BA built the Authentication
system
Sprint 2
Authentication with social login working great
QA started writing test cases Lead Architect joins the team
Sprint 3
Start separating application layer DB needs to provide single action per
object Started working on MVC model
Sprint 4
Continued work with QA entering test cases and BA analyzing use cases
Team presentations and team code review meetings
Sprint 5
MVC is not good enough We need everything in API so as to be
ready for Mobile Development
Begin to implement ASP.NET Web API
Sprint 6
Started instant search.. It was awesome!!!
Started scaling with Memcache
Implemented authentication token based security
Sprint 7
Need to optimize performance?? Implemented mini profiler for all
services, API and even client
Can track every request history
Sprint 8
Client side needs to be structured?? Implemented MVVM for client side
JavaScript
Separated Javascript from HTML using Durandal.js
Sprint 9
Memcache is not enough L Need something that can help to insert
and access fast for aggressive caching
We need Redis !!!
Sprint 10
API first design has weaknesses. We call 10 APIs for one page L
Made an API bundle that calls single API and returns data in JSON array
We were happy J
Sprint 11
Test with 100+ million users slowed our servers L
People advised us to take 100GB memory. This was crazy!
We started vert./ hori. scaling of NoSQL
Sprint 12
We were behind schedule L Started working on weekends and
started one-to-one meetings
Increased development time by 30% J
We started working
crazy hard L L
Sprint 13
Started discussions with interested parties in the local market
We were ready to roll !!
Sprint 14
Started focusing on core features and simplifying the product
Reused all possible wizards that we could
Sprint 15
First production deployment to Azure Cloud J
Real production tests started
Alpha version released !!!!
Sprint 16
Started tracking issues. All layers have intensive error logs
Worked on issues and features together in one sprint
Sprint 17
We did in 16 Weeks we were super happy J
But very tired of working so hard L
Worked for 2 days fixed some bugs and then . . . .
Packed and went to a beach
for the rest of the week J
Sprint 18
Optimized !! Optimized !! Optimized !! Removed unnecessary features
100 for every page on Pingdom!
Sprint 19
Bug fixing Fine-tuning
Code-cleaning
Sprint 20
Beta version launched on windows Azure
Want to know more . . ..
Contact us: [email protected] | www.siliconprime.com