Professional Experience :
# Strong expertise with concurrency and/or transactions
# Experience with the challenges of Distributed Computing Systems
# Familiarity with communication protocols, networking
# Experience with software design and communication with team members via documenting and diagramming
# Experience leading a small team of software developers working on a common task
IT Skills Required :
# Strong expertise with concurrency and/or transactions. Understanding of Internals of Java Threading Model, Locking etc
# Strong knowledge of different data structures- including concurrent structures and algorithms.
# Knowledge of NIO, wire protocols, serialization and other network concepts. Experience with the challenges of distributed computing systems would be bonus.
# Strong experience developing with Java, Java ecosystem related tools- in product which use some of the above concepts.
# Good in Software Design and Architecting ( for senior folks)
Additional Requirements / Soft Skills Preferred :
# Experience developing large-scale enterprise-class Java applications
# Experience with Hibernate, Spring, JTA, Lucene.
# Experience with JAAS and/or role-based security
# Experience with BigMemory, Terracotta Server Array, Ehcache, other Terracotta Products
# Ability to work and communicate well with a geographically distributed team
# Good verbal and written communication skills