Jim works as a software developer, programmer and technical architect. He has been a professional programmer in the private sector since the early nineties. He has worked in both product and service-based software companies. He has worked with languages such as Java, Python, Ruby, Perl, Objective-C, Scala, JavaScript C and C++.