Tech Stack
AngularAWSCypressDockerEC2JavaJUnitMicroservicesMockitoOracleRxJSSplunkSpringSpring BootSpringBootSQLTypeScript
About the role
- Design and implement scalable backend services using Java, Spring Boot, and REST APIs.
- Build and enhance modern Angular applications using TypeScript, NgRx for state management, and Nx for managing micro frontend architecture.
- Architect and contribute to a modular frontend framework supporting multiple apps via Nx workspaces and shared libraries.
- Develop and consume APIs as part of a distributed microservices environment, with a focus on reliability, maintainability, and testability.
- Implement structured logging using SLF4J and Log4j, and integrate with monitoring tools and logging aggregators (e.g., Splunk, ELK).
- Collaborate with DevOps engineers to define and optimize CI/CD pipelines using GitLab, ensuring smooth and secure build, test, and deployment workflows.
- Apply test-driven development (TDD) and behavior-driven development (BDD) practices using Jasmine, Karma, Cucumber, JUnit, and Mockito.
- Ensure code quality and security by leveraging tools such as SonarQube and Veracode, with a focus on maintainable and compliant code.
- Analyze and optimize application performance, database interactions, and service integrations.
- Ensure data integrity and business logic correctness when integrating with Oracle and relational databases, particularly around MBS-related data structures.
- Contribute to MBS-focused initiatives such as pool-level data processing, cashflow modeling, investor reporting, and REMIC structures.
- Collaborate cross-functionally with product managers, analysts, and QA engineers to translate financial domain requirements into working software solutions.
- Stay current with emerging technologies and best practices, and actively mentor junior team members.
Requirements
- Bachelor's degree in Computer Science, Engineering, or related field
- 5-7 years of experience as a Full Stack Engineer or Software Developer
- Strong backend development with Java, Spring Boot, Spring MVC, Spring Data
- Frontend development with Angular 16+, TypeScript, NgRx, and RxJS
- Experience building or consuming APIs in a microservices architecture
- Experience working with Nx-based Angular micro frontend architectures is highly preferred
- Proficient in unit testing and integration testing frameworks: Backend: JUnit, Mockito & Frontend: Jasmine, Karma, Cypress, Cucumber
- Strong command of Git and GitLab workflows, including merge requests, CI/CD integration, and GitOps principles.
- Experience with SLF4J, Log4j, and log aggregation tools.
- Familiarity with Oracle and SQL-based data access, schema design, and data integrity strategies.
- Understanding of DevOps and CI/CD principles using GitLab CI, Docker, and infrastructure-as-code.
- Knowledge of financial markets, especially Mortgage-Backed Securities (MBS): securitization workflows, pooling, tranche structures, and reporting mechanisms.
- Familiarity with AWS services (e.g., EC2, RDS, CodePipeline) is a plus.
- Exposure to code quality and static analysis tools like SonarQube, Veracode, or Fortify.
- Strong problem-solving, communication, and team collaboration skills.
- Experience working in Agile/Scrum environments with JIRA, Confluence, Slack, and collaborative development workflows.
- Experience with feature flags, blue-green deployments, and observability tooling.
- Prior experience working in finance, particularly with Mortgage-Backed Securities (MBS), is highly desirable.