Requirements - Mandatory
Excellent knowledge of Java.
Experience developing applications on Java Enterprise.
Practical experience working with databases (SQL and NoSQL).
Experience working with requirements and project documentation.
Knowledge of OOP, OOD and design patterns.
Experience using TDD.
5+ years of experience developing web applications.
Experience using ORM, EJB and IoC.
Knowledge of project management tools (Ant or Maven).
Experienced team worker.
Good spoken English.
Requirements - Additional
Experience using NoSQL databases (Cassandra, MongoDB).
Experience developing distributed systems using Apache Spark, Apache Hadoop, HDFS, Apache Mesos.
Experience of team management.
Experience creating rich HTML-based UIs.
Experience setting up and administering application servers (Tomcat, JBoss, GlassFish).
Experience using continuous integration systems (TeamCity, Bamboo, Hudson).
Knowledge of other programming languages.
Foreign business trips.
Paid overtime, vacation and sick leaves.
Voluntary medical insurance.
Corporate doctor services.
Foreign Language learning.
Internal Training Program.
Corporate events and meetings.
Office in a comfortable business-center.
Fruit breakfasts and dinners.
Unlimited tea and coffee.