Translation of complex functional requirements into technical requirements, implementing and maintaining a coherent and progressive development strategy for our product line. Design, develop, and maintain complex systems using the best of breed development practices and technology.
- Responsible for the overall software development life cycle.
- Delivery of high quality, scalable and extensible systems, and applications on-time and on-budget.
- Adoption and evolution of software engineering practices and tools within the organization. Keep in sync with the latest technology developments and open source offerings, and evaluate and adapt them to solving the business problems of the organization.
- Collaborate with other technology and business teams within the organization to provide efficient, robust solutions to problems.
- Drive and manage the bug triage process. Report on the status of product delivery and quality to management, customer support, and product teams.
Requirements
- Minimum of 4+ years of experience in Java backend development.
- Strong understanding of data structures and algorithms.
- Sound understanding of object-oriented programming and excellent software design skills.
- Good experience of SOA/Microservices/RESTful services and development of N-tier J2EE / Java Spring Boot applications (APIs).
- Strong understanding of database design and SQL (MySQL/MongoDB) development.
- Should have experience with Apache Kafka, RabbitMQ, or other queueing systems.
- Drive discussions to create/improve the product, process, and technology.
- Provide end-to-end solution and design details.
- Lead development of formalized solution methodologies.
- Passion to work in a startup-like environment.