Staff Engineer (Java Rest)
Experience – 5.5 – 9.5 Years
We are a Digital Product Engineering company that is scaling in a big way! We build products, services, and experiences that inspire, excite, and delight. We work at scale across all devices and digital mediums, and our people exist everywhere in the world (18000+ experts across 32 countries, to be exact). Our work culture is dynamic and non-hierarchical. We are looking for great new colleagues. That is where you come in!
- Relevant experience in Java 8 or higher, Spring Framework-Core/Boot/MVC, Hibernate/JPA, t and Microservices Architecture.
- Experience in SOA based architecture, Web Services (Apache/CXF/JAXWS/JAXRS/SOAP/REST)
- Experience in CI/CD DevOps - Jenkins/Docker/Ansible/Maven/Ant, Cloud – AWS Unit Testing, Performance Tuning,
- Hands on experience of RDBMS like SQL Server, Oracle, MySQL, PostgreSQL.
- A good understanding of UML and design patterns
- Knowledge of high-quality professional software engineering practices for agile software development cycle, including coding standards, code reviews, source control management, build processes, testing, and deployment
- Fundamental knowledge of design patterns
- Experience in communicating effectively with users, other technical teams, and management to collect requirements, describe software product features, and technical designs
- Passionate about building great solutions
- Mentoring the team members to meet the client's needs and holding them accountable for high standards of delivery
- Being able to understand and relate technology integration scenarios and be able to apply these learnings in complex troubleshooting scenarios
- Writing and reviewing great quality code
- Understanding functional requirements thoroughly and analyzing the client’s needs in the context of the project
- Envisioning the overall solution for defined functional and non-functional requirements, and being able to define technologies, patterns and frameworks to realize it
- Determining and implementing design methodologies and tool sets
- Enabling application development by coordinating requirements, schedules, and activities.
- Being able to lead/support UAT and production roll outs
- Creating, understanding and validating WBS and estimated effort for given module/task, and being able to justify it
- Addressing issues promptly, responding positively to setbacks and challenges with a mindset of continuous improvement
- Giving constructive feedback to the team members and setting clear expectations.
- Helping the team in troubleshooting and resolving of complex bugs
- Coming up with solutions to any issue that is raised during code/design review and being able to justify the decision taken
- Carrying out POCs to make sure that suggested design/technologies meet the requirements