1. Have a BA or a BSc in Computer Science, Engineering or equivalent
2. Have at least 3 years experience in building and deploying Java web-based applications
3. Have solid knowledge and hands-on experience with the following technologies: Java EE, Spring Framework (Core, MVC, Security), JPA, Hibernate, Maven
4. Understand technologies and preferably have hands-on experience with the following technologies: Mule ESB, RabbitMQ, Activiti BPM, Apache Solr
5. Possess practical knowledge of shell scripting and, at least, one scripting language such as Ruby, JavaScript, Python or PHP
6. Have prior experience in a test driven development environment and architecting large applications
7. Show an understanding of relational databases such MySQL, PostgreSQL, etc… as well as no-SQL databases
8. Ideally have designed and architected scalable and elegant microservice based applications
9. Posses experience specifying and integrating with RESTful services
10. Have great written and verbal skills in English