How to become a database developer?

When developing the minimal viable product for an iPhone app, is it ideal to have one "front-end" developer handling the client-side scripting (xcode/obj-c) and another "back-end" developer handling the server side scripting / database? Or is it better to have just one developer handle both?

  • I ask this because I've seen cases where a team divides the work this way (one front-end working on the client and another back-end guy on the server scripting / database) AND I've also seen it where people claim having ONE guy is good enough for all purposes such as development speed and quality of the app. Is the speed of development for most non-game apps the same or does this division-of-work make it faster? Assumption #1: The question assumes that we're not outsourcing our backend to a service like Parse, etc. Assumption #2: I'm referring to development to MVP only, which I understand can vary by app. The question is more about what's the best division of work for most MVPs. Assumption #3: This is solely for non-game iphone apps.

  • Answer:

    It would be better for speed and productivity if you had a single developer, but finding a good one with both skill sets will be difficult.  Ideally, you'll have someone who can do both well enough for the MVP, then have them take on a lead role as you expand beyond MVP and hire specialists.  In my experience, it's easier for backend engineers to learn front end skills rather than the other way.  They may never be an expert but will be able to get by.  Getting a front end engineer to learn how to scale databases and back end infrastructure is tougher road, and redo-ing a product's backend is a bigger undertaking than if you need to redo the front end (see Twitter circa 2010).  For that reason, if you need to pick one, go with the backend engineer who can do some front end.

Dave Hagler at Quora Visit the source

Was this solution helpful to you?

Other answers

Depends on: 1) skills of your developer(s): someone can be a brilliant objective c dev but maybe has no experience developing a scalable Java or Ruby REST api, or the other way around. Maybe you are lucky enough to find one of those polyglot programmers that are good in both. 2) Complexity of your project: if the project is fairly basic, I'm pretty sure that an objective c dev could whip up some REST apis using Rails. If you have a fairly complex application, this might require dedicated specialists. 3) Size of project, timelines and budget: if the project is rather big and you want to ship quickly, maybe it is worth having two devs, with an obvious impact om budget.

Lee Provoost

A good option is to have only one good iOS developer do the whole project with the help of a good back-end service such as http://parse.com which takes care of most of the hard work of a back-end service.

Ary Tebeka

It doesn't really sound like an MVP if you aren't willing to use an "outsourced" backend. Any two-man team is going to have all of the communication overhead that comes with a two-man team. If you just have one guy doing both, that means you've got your iOS programmer writing server code instead of spending time polishing the iOS app.

Brian Papa

If you get one person to do this, you better give them a large share of the company and high pay. It definitely depends on the scale of your operations, but in general backend people suck at front-end and visual design, and front-end people hate the drudgery of tedious backend work and may do a worse job at properly architecting it, which will bite you later. If you do find a miracle worker, my advice is to pay and treat them as such. gl

Zephram Saint

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.