Job Purpose :
The Senior Backend Software Engineer is part of a professional team developing critical business applications for the fund and banking industry. He / she uses current technologies, frameworks and tools in the field, as well as modern paradigms and architecture designs, such as microservices, containers, etc. He / she covers the full software development lifecycle including operations and maintenance and applies proven best practices to develop complex backend functionalities with high quality standards. In addition to new application development, the migration of existing software applications to distributed architectures is a key responsibility. The role requires an agile mindset and DevOps mentality, as well as autonomous coordination on requirements and issues with product management and support.
Main tasks of the position :
Implementation of change requests and maintenance of a multi-tier Java application
Developing business processes, complex business logic, and algorithms for the financial / fund industry as part of a software development team
Performing software analysis, programming, testing, and debugging
Creating well-defined, efficient and well-testable code
Creation of unit / integration tests
Documentation of designs, algorithms, APIs and processes
Performance analysis and improvement of existing processes on database and Java code level
Automation of processes through further development of CI / CD pipelines
Execution of code reviews
Active participation in architecture and design discussions and optimization as well as stabilization of existing services
Assuming the role of "lead developer", making technology decisions, solving complex problems and thinking outside the "box".
Evaluate new technologies, create prototypes, and assess existing software systems
Assist our project managers / product owners with effort estimates and act as a point of contact for technical questions
Coaching and guiding less experienced colleagues in general and in their own projects
Side tasks of the position :
Participation in the implementation of division and company-wide initiatives for the strategic further development of processes, products and technologies
Formal Education :
Degree in (business) informatics or a comparable, successfully completed technical education, alternatively corresponding professional experience
At least 7-10 years of professional experience at a software company or in a comparable position
Successful supervision of software development projects as a senior / lead developer and significant contribution to the success of the team
Qualifications / Skills / Personality Traits :
Work experience
Experience in software development of multi-tier applications and complex backend workflows using Java 11 and above
Experience in the development of REST APIs
Solid knowledge of frameworks such as Spring, Hibernate (JPA)
Knowledge of SQL and DML, PostgreSQL preferred
Experience with development tools like git, SonarQube, Jenkins, IntelliJ or Eclipse
Basic functional knowledge of the financial industry
Up-to-date knowledge of topics and trends in the field of software engineering and its constant expansion
Good knowledge of software engineering methods (UML, OOA, OOD, data modeling, etc.) and design patterns
Sound practical knowledge of current container technologies such as Docker, Kubernetes, OpenShift or Rancher
Know and understand security challenges in the context of distributed software architectures, and identify and apply the right solution strategies
Professional expertise and other knowledge
Very good oral and written English skills
Personality traits
High quality awareness, open and goal-oriented communication and the ability to quickly familiarize yourself with new topics
Fun in software development and willingness to develop further, flexibility and team spirit
DevOps mentality and open to collaboration within and across teams, including tasks / tools beyond programming such as deployment, automation and operations.
Lead Java Developer • India