We are currently looking for a:
Java Software Engineer
As Java Software Engineer at Fictional Company you will
- Develop new features and functionality for high transaction, large scale betting websites
- Participate in design and code reviews
- Identify and address performance bottlenecks in the software
- Design solutions that are modular, scalable and portable
- Work to improve overall system architecture and design components to meet those goals
The candidate must have
- A bachelor’s degree (1st or 2:1) in a traditional science subject, ideally computer science, engineering, or information systems from a well-regarded university
- Excellent communication skills, both written and spoken
- Demonstrable talent coding in Java and J2EE
- Working knowledge of web services, XML and Tomcat or other container
- Demonstrable talent in writing and using algorithms and assessing time complexity and performance
- Ideally 6+ years of commercial experience developing software
- Ideally 2+ years of demonstrable experience in large scale system design
The ideal candidate would also have
- Experience developing on Unix/Linux
- Web technologies and internet protocols (SOAP, WS-*, ReST, XML, HTTP, TCP/IP)
- Scripting skills: Bash, Perl, Python, and JavaScript
- Experience with Maven or another Continuous Integration and Automated unit testing frameworks
- Knowledge of Spring, Hibernate, Ehcache
- Experience working with Informix and/or PostgreSQL
- Experience with interfacing with legacy applications
- Any knowledge of TCL is a major plus
- Experience in developing large distributed systems and concepts such as caching, sharding, consistent hashing, interprocess communication and brokering
- Ability to learn and critique new technologies quickly