* Bachelor's degree in Computer Science, Computer Engineering, or Electrical Engineering
* At least 8 years of experience on hands-on Java development and related technologies
* Has worked with back end technologies based on both J2EE and latest frameworks like Spring.
* Has experience working with two or more of data related technologies and familiarity with others from various Relational databases, Nosql databases, Caching systems, Full Text Search engines, Big Data systems.
* Has good experience with the TDD approach, doing unit testing, mocking, integration/UI testing, behaviour driver testing.
* Has good experience working with, setting up and configuring any continuous integration and delivery systems, any code quality automation technologies.
* Has good experience working with one or more of architecture patterns and familiarity with others.
* Can resolve serious performance related issues by using various techniques, including testing, debugging and profiling.
* Has experience with one or more cloud or devops services like AWS, Docker, Heroku, Digitalocean, etc.
* Has experience with one or more front end technologies including templating, CSS and JS frameworks.
* Has experience or familiarity with any of Virtualization or Containerization technologies.
* Has experience or familiarity with any of Message Queuing/Broking or Service Bus systems.
* Can architect and design apps, review design and code, review and fix tests and functional coverage.
* Has good current hands-on development experience.
* Has experience working with complete product life cycles, quality metrics, evaluating technologies, helping with estimation and budgeting, helping with planning and road maps, helping with pre-sales and technical proposals.
* Excellent understanding of current enterprise software technologies and development practices/tools, including virtual environments, source control, remote development, issue tracking, build and test automation, and networking management
* Ability to engage sophisticated global customers in deep technical discussions, making them confident that you know their problem better than they do
* A true “roll up the sleeves and get it done” working approach; demonstrated success as a problem solver, operating as a result-oriented, self-starter
* Comfort “working virtually” with teammates and customers around the world