At a Glance
- Tasks: Lead hands-on projects to enhance security and reliability of banking applications.
- Company: Join a forward-thinking tech company focused on modernizing critical systems.
- Benefits: Enjoy competitive pay, flexible work options, and opportunities for growth.
- Other info: Dynamic team environment with plenty of opportunities to learn and lead.
- Why this job: Make a real impact in the banking sector while working with cutting-edge technologies.
- Qualifications: Strong coding skills in Java and experience with DevOps practices required.
The predicted salary is between 90000 - 110000 $ per year.
The project is focused on improving the security, release reliability, maintainability, and operational resilience of business-critical banking applications. Forward Deployed Engineers will conduct targeted, hands-on engagements with development teams that are facing challenges with vulnerability remediation, automated testing, legacy technology, production stability, or achieving a safe and rapid release cadence. The role combines senior software engineering, DevOps, SRE, test automation, application security, and legacy modernization. Approximately 70% of the work involves hands-on coding and configuration.
The technical scope includes:
- Building effective automated test suites
- Remediating security vulnerabilities
- Performing dependency and reachability analysis
- Upgrading Java and NPM runtimes
- Modernizing Spring and legacy middleware applications
- Improving CI/CD pipelines
- Containerizing applications
- Automating deployments
- Introducing standard observability and resilience patterns
The Expert FDE is expected to lead complex engagements, work directly with development and client stakeholders, define the technical remediation approach, implement critical changes personally, and enable client teams to maintain the improved engineering practices.
Responsibilities
- Lead targeted technical engagements addressing security, testing, release, resilience, and legacy technology challenges with development teams.
- Assess application code, dependencies, runtime environment, test coverage, deployment architecture, CI/CD pipelines, observability, and operational risks.
- Write, debug, review, and enhance production-quality code and configuration throughout engagements.
- Define and implement practical modernization and remediation plans with clear priorities, dependencies, risks, and measurable outcomes.
- Develop or improve unit, integration, component, contract, and deployment smoke tests using Test-Driven Development practices.
- Select appropriate automation-testing approaches per application and drive implementation, including the use of AI coding assistance.
- Source suitable test data and implement secure data masking for lower environments.
- Conduct vulnerability triage, root-cause and dependency reachability analyses, remediation prioritization, secure code changes, and regression testing.
- Upgrade Java, JVM, NPM, Spring, open-source libraries, internal dependencies, installed software, base images, and operating systems to supported versions.
- Establish sustainable dependency-management processes with continuous library updates using Renovate or equivalent tools.
- Modernize legacy applications and middleware stacks, including those deployed on WebSphere or WebLogic.
- Containerize applications using Docker and support deployment to OpenShift.
- Improve source control, branch management, pull-request, and code-review practices.
- Design, implement, and optimize CI/CD pipelines to ensure safe, repeatable, automated, and easy releases.
- Automate database changes using Liquibase or equivalent migration tools.
- Automate installed software and environment changes using Ansible or equivalent configuration management tools.
- Implement secure coding patterns, secrets management, authentication, authorization, and least-privilege controls.
- Introduce standard observability patterns, including structured logging, application metrics, tracing, dashboards, alerting, and actionable health checks.
- Enhance exception handling, operational diagnostics, rollback procedures, and production-validation controls.
- Design or improve resilient deployment architectures, including hot-hot cross-datacenter deployments where required.
- Lead technical workshops and effectively communicate technical decisions, risks, blockers, trade-offs, and progress to engineering, security, architecture, operations, project management, and stakeholders.
- Provide technical leadership through code reviews, coaching, reusable standards, documentation, and knowledge transfer to development teams.
- Take ownership from initial assessment through implementation, production deployment, stabilization, and handover.
Skills
Must have
- Extensive years of hands-on software engineering experience, with a focus on developing and maintaining production applications.
- Active involvement in writing and configuring code.
- Expertise in Java and JVM-based development.
- Strong TypeScript skills for Node.js-centric projects.
- Proficiency with the Spring ecosystem and modernizing Java enterprise applications.
- Recent personal involvement in coding, debugging, and reviewing production code.
- Practical experience in Test-Driven Development across multiple testing frameworks.
- Solid understanding of various testing types such as unit, integration, and regression tests.
- Creating automated test suites integrated within CI/CD pipelines.
- Strong knowledge of secure coding practices, vulnerability remediation, and dependency risk management.
- Experience upgrading runtimes, frameworks, libraries, container platforms like Docker or OpenShift, and managing Linux environments.
- Familiarity with build tools such as Maven, Gradle, or npm.
- Advanced Git workflows and comprehensive production-debugging techniques.
- Understanding of application observability, exception handling, and production readiness.
- Fundamental distributed and critical system engineering principles.
Soft skills
- Demonstrated ownership of complex technical work through all stages, from design to production handover.
- Strong client-facing communication.
- Ability to coach engineers and implement sustainable engineering standards.
- Responsible and active use of AI coding tools to enhance engineering, testing, and delivery outcomes.
Nice to have
- Experience modernizing or migrating applications hosted on IBM WebSphere or Oracle WebLogic.
- Experience with major-version upgrades and migration from older versions of Spring or Spring Boot.
- Experience configuring continuous dependency-update tools such as Renovate or Dependabot.
- Experience with dependency reachability analysis, Software Composition Analysis, CVE assessment, and remediation of transitive dependencies.
- Experience automating database changes using Liquibase or Flyway.
- Experience using Ansible or equivalent configuration-management and deployment-automation tools.
- Strong experience in TypeScript, Node.js, and the npm ecosystem.
- Experience with Kubernetes in addition to OpenShift.
- Experience designing hot-hot, active-active, multi-region, or cross-datacenter deployment architectures.
- Experience with resilience testing, disaster recovery, controlled failover, and production-recovery exercises.
- Experience with enterprise observability tools such as Splunk, ELK, Grafana, Prometheus, OpenTelemetry, AppDynamics, or Dynatrace.
Forward Deployment Engineer in Mississauga employer: Urban Ridge Supplies
As a Forward Deployment Engineer in Mississauga, you will join a dynamic team dedicated to enhancing the security and reliability of critical banking applications. Our company fosters a collaborative work culture that prioritizes employee growth through hands-on technical engagements and continuous learning opportunities. With a focus on innovation and modern engineering practices, we offer a unique environment where your contributions directly impact our clients' success while enjoying competitive benefits and a supportive atmosphere.