Our client is looking for a Senior Java Software Engineer to help them design and build their web enabled energy conservation solutions. If are you interested in being a game changer, want to work with other passionate, fun, experienced and really happy people, show us your best and we will give you the chance to not only love what you do but change the way the whole world thinks about energy.
The key to their success will be the imagination and creativity in creating exceptional back end solutions that are robust and scale well.
Ref No: 5404
Senior Java Software Engineer.
Things you need to have:
- University or College degree in a Computer Science related field.
- 5+ years’ experience developing n-tier J2EE applications.
- Master of Java, JUnit, spring, J2EE, SVN.
- Very strong with ORM, XML, JSON and Restful Web Services.
- Experience with Linux (Red Hat/CentOS), Apache, Tomcat and MySQL.
- Excellent verbal and written communication skills targeting different audiences (technical, non-technical, customers and management).
- Strong analytical and problem solving skills.
- Complete SDLC experience-
- Have worked on projects from inception right through to the end result.
- Experience working with TDD (Test driven development) or extensive unit testing.
It would be great if you also had:
- Ability to work effectively and collaboratively in a fast paced environment.
- A strong interest in sustainability and green technologies.
- Love of open source and a strong desire to play with new technologies.
What you will be doing:
- Design and development within a multi-process, highly concurrent, asynchronous and clustered server back-end. We scale massively.
- Understand the "big picture"
- Coding and debugging applications using a combination of Eclipse, Java, Spring, iBatis, MySQL, XML and JSON.
- Performance tuning and analysis of code running within the JVM.
- Extensive unit testing with JUnit. Testing is a way of life.
- Some system administration of Linux, Apache, Tomcat and MySQL environments.
- Writing scripts to automate various aspects of their infrastructure.
- Interfacing with the Quality Assurance group to identify and resolve issues.
- Evaluate and identify new technologies which can solve complex problems.
- Work with stakeholders to define, design, develop and deploy high quality solutions which satisfy project objectives and requirements.
- Occasional on-call support of the production environment.
- Participate in group meetings (discussions of architecture of the product growth)