Software developer with a wide range of experience including Java, C, C++, Ruby and functional languages.