views:

126

answers:

5

Recently, I have been reading job listings. I have found that there are many who are looking for "strong candidates with server side development".

I am primarily a C++ developer for the Window platform. What do the listings mean? Software using the client-server architecture?

And if so, are there common complete frameworks for developing client-server architecture in c++ on win ? Surely I would like to read about them and know from your experience what's the best.

Links for information regarding the matter will be great also.

+4  A: 

Usually you need some skills in communication protocols, threading, and ability to write efficient and stable code.

Server side programmers write servers that supply services either to few or millions of clients, this usually involves no GUI (not web sites).

Dani
A: 

To keep it simple, it means you are dealing with a dedicated machine, and clients that connect to it via a communication protocol. It depends on their problem domain.

  1. Enterprise systems: This could mean be file transfers, authentication over a network, message queuing etc.
  2. P2P: managing clients and resources
  3. Web publishing: basic knowledge of how a user can connect to the server
monksy
+2  A: 

Typical server side tasks in the finance industry involve things like:

  • talking to electronic stock exchanges
  • composing multiple stock price feeds
  • doing algorithmic trading
  • providing access to static data
  • gluing together front-office and back-office systems
  • etc.

Most places do this sort of stuff on enterprise level Solaris boxes, but there is of course a big Windows Server contingent too. Typically, there is no specific GUI client for these servers, and indeed one server often acts as a client to several others and vice versa.

anon
+1  A: 

For C++ developers, normally, server developers have a strong background in systems programming: asynchronous I/O, sockets, threads and processes, IPC, et cetera. They are also usually looking for someone with strong knowledge in C++ OOP mechanics, and probably even templates to some degree.

At least that is what we look for...

Dr. Watson
A: 

I have used the ACE library for server development. It is a platform independent, C++ pattern orientent framework for server development. There are many books and documents using ACE for server development.

Dan