- Collaborate with other senior engineers, and management, to achieve optimal application architecture and design
- Develop efficient, secure applications, peer-review code, and document solutions within an agile-blended software environment
- Communicate proactively with teammates, infrastructure, security, and quality assurance to continuously improve processes and engineering excellence
- Experience with Multi-threading is a must for this position
- Ability to work on real-time web applications.
- Bachelor's degree or higher in computer science, Engineering or simila
- 7+ years of professional software development experience with Java based applications.
- Strong experience with Spring Boot, MVC and other Spring modules.
- Experience with Core Java and multithreaded programming.
- Experience with writing Unit tests using JUnit and mocking frameworks
- Experience with Maven, Jenkins, Git
- Experience with ibatis, hibernate.
- Experience with JMS and messaging systems.
- Experience with Agile Methodologies and tools
- Excellent problem solving skills
- Understanding of architecture and development methodologies of n-tier systems
- Can-do attitude
- Innovative drive and experience coupled with quick mastery of new technology, language, or development environment
- Self-motivated, naturally curious, and able to thrive in a fast-paced and client-focused environment.
- Skilled in documentation including business logic flows and technical writing
- Able to understand and communicate not just how certain technologies work, but why
Additional Skills (nice to haves):
- Experience with Unix, Linux and Solaris.
- RESTful Web service expertise.
- Experience with application server platforms: Apache, Tomcat.. etc.
- Experience writing SQL and stored procedures.
- Experience with SQL databases: DB2, MySQL, Maria.. etc.