0

I'm a Java/Android Developer, I recently graduated college and currently working as a Jr. Android Developer. I feel very comfortable around Android and Java in general, also I'm always reading and exploring new things. Lately a colleague advised me to look into server-side development as well.

After doing some research online, the following options came-up:

  1. Java EE (JAX-RS for example), it probably has a much smaller learning curve than the others as I'm already comfortable with Java.
  2. PHP, it seems that PHP is solid and everywhere, the code base is huge, even most Android tutorials that I've seen use PHP for the server-side.
  3. JavaScript (Node.js with Express).
  4. NONE!, just sticking to Android development and improving my skills and knowledge.

Does a mobile developer HAVE to know about server-side development ?? which of the choices above is the way to go ?? (if none of them, please let me know your suggestion(s)).

closed as off-topic by Basile Starynkevitch, durron597, user22815, user40980, gnat Sep 3 '15 at 18:40

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking career or education advice are off topic here. They are only meaningful to the asker and do not generate lasting value for the broader community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – Basile Starynkevitch, durron597, Community, Community, gnat
If this question can be reworded to fit the rules in the help center, please edit the question.

  • Your question is career-advice, so off-topic. Look also inside HOP, Opa, and Ocsigen with Ocaml – Basile Starynkevitch Sep 3 '15 at 16:31
  • 2
    Just a note: check out PHP version changelogs if you think PHP is solid. It is everywhere, that is true. – Sami Kuhmonen Sep 3 '15 at 17:14
  • It is simplistic to mark this as career advice. He is trying to understand if it makes sense to learn a particular technology class and that is part of becoming a better programmer. – Jason K. Sep 3 '15 at 19:26
4

Rather than providing this as career advice, I will say that knowing both the client and server side in development to at least some degree makes you a better programmer because you can learn best practices on what to do and not to do in terms of performance, maintainability, standard approaches etc. Without learning the server side, a programmer is missing out on understanding how to solve several classes of problems.

  • Thank you for your advise ... I'm already getting to know some server-side technologies and I'll continue to dedicate time to this cause. Any advise on which programming language to go with for this ?? :) – Hussain Al-Derry Sep 4 '15 at 8:11
  • It is always good to have a few different languages under one's belt so I would pick something different from what you already know. The concepts will remain the same as far as what the server has to do to process messages. – Jason K. Sep 4 '15 at 12:18
  • Cool ... I think I'll go with Node.js. – Hussain Al-Derry Sep 4 '15 at 15:34
2

I think any programmer who does mobile or web app development should do server side work. As Jason already said, it should make better at what you do. But to me, a big reason to do it is so you can debug and fix your own issues. If all you ever do is client side work, then you are at the mercy of others to do the server-side work. You won't have a choice in some situations, and you'll have to deal with a black box. But where all the development is in-house, try to at least get access to the server side so you can be more efficient.

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