Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I have 1 year and 6 months of experience on Android. All of my experience has been into application development. Recently I have got offers from two companies. One is offering me a profile to work on application layer and other is offering a profile on Android middleware.

Can you guide me which would be better? Is middleware development better than application layer development from the career perspective in terms of money and other opportunities?

I am really in a big dilemma. Any help would be appreciated. Also if someone can tell me as to who will earn more-a five year application layer guy or a middleware guy?

Thanks a lot in advance.

share|improve this question
3  
At this stage of Android Developement I don't think it will matter. Anything you do at this stage of Androids lifestyle is like writting Windows 3.1 applications nobody really cares about what you did in the 80's beyond that fact you have overall experience. –  Ramhound May 11 '11 at 12:45
    
Have you noticed any salary discrepancy at this time? –  JeffO May 11 '11 at 14:25
    
@jeff..as of now both the companies are offering me the same.. –  rjs May 12 '11 at 7:24
add comment

2 Answers 2

There is no objective better in terms of money and career perspective. Nobody can really predict the future and what projects are going to be realized. It's even worse with money: There is no sane way saying that you'll earn more in developing middleware than in developing a mobile frontend. It depends to a large part upon the knowledge you're having and how you can contribute to the whole project.

The answer is always the same: Choose the job and choose the type of development area that appeals to you most and where you feel at home. When you're doing what you like the chances are high that you'll deliver good work and earn a decent amount of money.

share|improve this answer
    
Thanks a lot Perdian.. –  rjs May 12 '11 at 7:26
add comment

Middleware could be the most interesting choice but is high risk

Middleware tends to be needed as a platform matures and architectures start to coalesce. At that point the inter-communication between different applications on different machines becomes necessary so that users continue to have the same experience regardless of their gateway to the data.

For example, synchronizing contacts between your Anroid phone and your Google account and then verifying them on an iPhone makes use of some sophisticated contact management middleware (the Google Contacts Data API).

From the sound of it, you are being given the opportunity to work on software that facilitates arbitrary inter-platform communication at some level. If that software has the potential to be licensed and sold to application developers then you could be in the money. However, that is a either a high value sale (think expensive developer plugin) or an ongoing service (think web service with paid for login). It may be that an open source equivalent pops up and kills the purchase market, but opens the service market which may be bad news for your employer.

To sum it up, if you go down the middleware route then you're shifting your focus from specifically developing an Android application to working on something that works on many platforms. That may not appeal to you so much.

share|improve this answer
    
Thanks a lot Gary. –  rjs May 12 '11 at 7:24
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.