Job Description: We are seeking a highly skilled Full Stack Developer to join our dynamic team, working on a variety of technology initiatives and trading-related applications. This role involves contributing to the decommissioning of legacy systems by creating new, cutting-edge applications. The ideal candidate will be proficient in Java microservices or Python FastAPI for backend development and ReactJS for front-end development. You will be responsible for application enhancements, data migration, debugging, and supporting complex workflows, leveraging asynchronous design patterns using AWS services like SQS and SNS. Key Responsibilities:
- Work on decommissioning legacy applications by building new applications using modern technologies.
- Enhance and maintain existing applications with a focus on performance, security, and scalability.
- Debug and understand complex codebases and workflows, especially in asynchronous systems using SQS and SNS.
- Collaborate with cross-functional teams to design, build, test, and deploy high-quality software solutions.
- Develop microservices using Java (11+) or Python (FastAPI), with a strong focus on application architecture and design patterns.
- Create front-end components using ReactJS to deliver intuitive user experiences.
- Ensure robust unit testing and code coverage, adhering to best practices.
- Utilize GitLab CI pipelines and containerized applications for continuous integration and deployment (CI/CD).
- Work with AWS cloud technologies (SNS, SQS, ECS, Lambdas, etc.) to build and scale applications.
- Collaborate with business and technical stakeholders to deliver end-to-end solutions.
Requirements:
- 5+ years of professional software development experience.
- Proficiency in Java 11+ and Python (FastAPI) with hands-on experience in microservices development.
- Strong knowledge of front-end development using ReactJS.
- Solid experience with modern AWS architectures and technologies, including SQS, SNS, ECS, and Lambdas.
- Hands-on experience with GitLab CI pipelines and containerized applications (Docker).
- Strong understanding of application architecture, design patterns, and software engineering best practices.
- Extensive experience with relational and NoSQL databases, including creating and debugging complex SQL queries and stored procedures.
- Proven ability to debug complex systems and workflows.
- Knowledge of the asset management industry and/or financial markets is a plus.
- Excellent communication skills and a collaborative approach to working with stakeholders.
Preferred Qualifications:
- Experience in data migration and cloud-based application deployments.
- Familiarity with asynchronous programming and event-driven architecture.
- Strong problem-solving skills and eagerness to learn new technologies and frameworks.