Startups face a number of large challenges and selecting the appropriate technology stack can play a large role in the success of any venture.
My hope is you have a technical lead on your team who can help with this process -- if not, I strongly suggest finding one. It's extremely difficult to start a company (in any industry) without any technical dna built into the fabric of the company.
When picking a stack or set of frameworks to solve the specific needs of your company I would look at two things: momentum and in house experience.
Refers to the trajectory that the framework/language/hardware/etc is on.
- You want something that is mature enough to be stable and supported and has a large community around it.
- You always want something that is on an upward arc. ... Engineers always want to work on the hot, new shit; you will have a much easier time attracting good talent if you are building on some mix of newer technology.
This probably goes without saying, but you obviously want to select a set of frameworks that your team has some familiarity with; it wouldn't make sense to start using Node if nobody on your team had any javascript experience.
- Backend: Python and Django -> for our CMS. Tastypie -> for our API, which is a rich and fully supported 3rd party lib.
- FrontEnd:
- Android: Java -> I don't have much insight into the 3rd party libraries that team uses.
- iOS: Objective C -> ditto.
- Hardware: We use Amazon Web Services for everything and it has been a godsend. Very well supported and cheap. I would whole-heartedly recommend leaning on their infrastructure.
Hopefully that gives you some insight into how we handle some of these specific challenges at Gudiebook. I'll throw these notes up on my GitHub account if you want to take another look at 'em.
Questions.