Senior Java Software engineer - Cape Town
R
55000-65000
per month
Cape Town, Western Cape
Cape Town,
Western Cape
more than 14 days ago
18-11-2016 1:00:01 AM
16-12-2016 1:00:01 AM
A leading company in the IT industry, based in Cape Town CBD, is currently looking for a passionate and enthusiastic Senior Java Software engineer to join their team.
You will need to be comfortable working with C++ components. You must have a solid understanding of design patterns, object oriented methodology and current trends.
You will be working as part of a highly skilled dynamic team that build and support applications in a technically exciting and challenging industry. You will be expected to design, develop, test, document and support applications written in Java as well as a few applications in C++ running on Linux.
Minimum requirements are as follows:
Experience:
• BSc degree or equivalent
• 5+ year’s recent development experience.
• Experience with the full software life cycle.
• Experience developing high performance, scalable, reliable applications.
• Proven experience meeting deadlines and delivering quality code.
• Proven experience working in an Agile environment
Development skills:
• Solid OO development skills in core Java
• Multithreaded, stand-alone server application development
• Inter-process communications using TCP/IP sockets
• SQL, relational database design and JDBC, preferably with MySQL
• Strong JVM configuration and tuning experience
• Following skills are a bonus:
o Java Server Pages (JSP)
o Java ME
o Firefly, Glassfish, spring, karaf or OSGI framework.
o Design patterns
o Communications protocols
o Test driven development (TDD)
o Linux
o C++, Delphi, PHP or other language experience.
• Strong OO development skills using C++ (not C or C#).
• Experience with CMAKE
• Understanding and practical use of the C++ standard template library.
• Strong, practical, Linux skills (Red Hat and/or Centos is advantageous)
• Inter-process communications using sockets (TCP/IP & Unix sockets)
• Following skills are a bonus, not a requirement:
o Boost and ACE libraries
o Design patterns
o Communications protocols
o Test driven development (TDD)
o Source control tools like Subversion and/or Git
o Memory leak detection tools like Valgrind.