Principal Engineer / Senior Engineer- Java
We are looking for someone with exceptional technical skills and experience in designing software frameworks. You will be responsible for developing and building upon existing technologies. The ideal candidate should have a strong Java proficiency and experience in distributed computing systems, concurrency, and performance tuning. You should also have good familiarity with communication protocols and networking. As a development team lead, you will be working with a geographically distributed team, so excellent communication skills are a must. Experience in quality-oriented practices, designing frameworks, and knowledge of Java open-source ecosystem will be highly valued. Experience in data storage systems, NoSQL data stores, and Terracotta Products would be a plus.
What We Need:
We need someone with exceptional technical skills who can develop and build upon existing technologies. If you have experience in designing software frameworks and a strong Java proficiency, this opportunity is for you!
Experience required: 6 or more years'
Required skills/experience:
* Strong core Java knowledge, including Java memory model
* Experience with the challenges of distributed computing systems
* Strong expertise with concurrency and/or transactions
* Experience with performance profiling and tuning
* Good familiarity with communication protocols, networking
* Experience with communicating/documenting software design with team members
* Experience as a development team lead
* Strong experience developing with Java, Java ecosystem related tools
* Strong understanding of data structures and collection types common in Java
* Strong experience with concurrency / multithreading
* Ability to work and communicate well with a geographically distributed team
Preferred skills/experience:
* Strong quality-oriented mindset and practices
* Experience designing frameworks and APIs to be used by a large number of developers
* Well-rounded knowledge of Java open-source ecosystem
* Experience in the development of data storage systems (relational, columnar, key/value, or etc.)
* Strong knowledge of the workings of common NoSQL data stores
* Experience with Ehcache, or other Terracotta Products