DescriptionPosition Overview:
We are seeking a dynamic and experienced Executive Director of Software Engineering to both lead and actively participate in the development of our innovative multi-asset trading platform on AWS. This role demands a hands-on leader with deep expertise in streaming non-blocking reactive Java programming and a strong background in microservices architecture domain-driven design and cloud technologies.
Key Responsibilities:
- Lead mentor and actively engage with a team of technologists to develop and deploy applications to the highest standards ensuring alignment with business and functional requirements.
- Design and implement microservices in Java utilizing streaming non-blocking and reactive programming techniques while also contributing directly to the codebase.
- Utilize technologies such as Kafka IBM MQ Kubernetes (K8s) Redis cache MSK and AWS to build scalable and efficient systems providing both strategic direction and hands-on support.
- Drive the adoption of domain-driven design principles and ensure the architecture supports the trading platforms multi-asset capabilities while actively participating in architectural discussions.
- Oversee and contribute to the development of technical documentation including service APIs using Swagger ensuring robust logging auditability security and monitoring features.
- Participate in API design sessions and guide the selection of design patterns for the team while also contributing to the design process.
- Lead and participate in code review sessions providing sign-off and ensuring high maintainability through TDD/BDD approaches.
- Demonstrate scalability of services using mock testing frameworks and other tools actively engaging in testing and validation processes.
- Mentor groom and guide junior team members fostering their professional growth and development within the organization.
Qualifications:
- Bachelors degree in Computer Science or a related field from a reputed university/college or equivalent experience.
- Deep knowledge and expertise in Java programming with a self-assessed proficiency of 8 out of 10 or higher and a willingness to engage in hands-on coding.
- 8-10 years of experience as a software engineer with a proven track record in building distributed architecture systems especially those involving large data volumes and real-time distribution.
- Strong understanding of CI/CD DevOps tool chains and a test-driven approach to agile delivery with hands-on experience in these areas.
- Experience with middle-tier data caching solutions (e.g. Redis Apache Ignite) and messaging-based solutions (e.g. Kafka IBM MQ).
- Knowledge of modern architectures based on microservices REST APIs databases SQL non-SQL stores and event-based architecture.
- Proven ability to mentor groom and guide junior team members fostering a collaborative and growth-oriented environment.
Preferred Skills:
- Hands-on experience with Spring framework and AWS cloud services actively applying these skills in development tasks.
- Experience in trading systems and familiarity with FIX protocol is an added advantage.
- Ability to solve complex and mission-critical problems both internally and externally with a hands-on approach.
- A constant learner and early adopter of leading-edge technologies and methodologies actively seeking opportunities to apply new knowledge.
Required Experience:
Director