Understanding of web services; SOAP, REST, JSON, XML

Usually in a professional environment when looking for somebody with some knowledge on webservices, what they need is somebody that have actual experience in the company custom web services, more than experience in public web service APIs available the internet. this means, that they need somebody that could develop an application that uses any kind of webservice, with more or less any kind of specification or protocol, or maybe writing or modifying an existing one, or at least has been involved in that kind of development, so he can be familiar with whatever that the staff developing the server can come up with. Note that companies can have a sort of processes in which they communicate with third party applications as client, or have to serve data to them. So, probably if you have made some websites that uses for example Facebook or Twitter APIs, that will be good for you as far as you have really been involved and know exactly what you are doing (and not just reading a reference an using it). Any experience is good, but note that almost anybody with some programing skills, have sometime used some public APIs, so that wont be the difference between two applicants, so if the dont mention some especific API they spect you to know, for sure they are expecting some deeper experience, so you can read a complex WS manual and implement a client which can comunicate with that WS, or even develop a custom service.

in any case you should be familiar with sockets, http request, JSON, HTML, SOAP protocol (in this case, also WSDL), parsing inputs and building well formatted outputs, etc (in php this is easy, but it is very different in C++, Java, etc)

As the good part for you, I can say that developing a web service is not so difficult, it is more or less an application that reads from database as you use to do, and instead of printing hmtl, prints xml or json.


Most of the time they are expecting individuals who have the ability and experience in writing applications that consume Webservices like SOAP, REST etc. if they want you to develop web services they will specifically mention that in the advertisement like "Experienced in web service development JSP,ASP.net" etc


I think starting from basic is very important. So what are these basics? I will try to explain a litle bit.

  1. Learn http requests, how to parametirize a request, how to handle this request.
  2. JSON and XML parsing, and see why web services uses these types as response(actucally in soap request and response are in xml format)
  3. why there is a need for soap service method while there is rest service method, because rest is more easier to deal with.
  4. I don't know which language you are better in, but there are a lot of frameworks in java, php, c# etc to deal with web services. I think you should start to learn a simple one for starting.