Designs and deploys applications using modern application architecture patterns and emerging technologies — Java SE, JavaScript, Angular, Apache Tomcat, and Spring MVC/Spring Boot. Creates performant applications using Agile software development methodology, object-oriented design, coding standards, RESTful service consumption and integration, common design patterns, secure application development, and test coverage. Builds and tests powerful and innovative software with tools — Logback, SLF4j, GIT, and Maven.
Primary Responsibilities:
• Participates in architecture design teams.
• Defines and implements services and application level architecture.
• Develops applications on complex projects, components, and subsystems for the division.
• Recommends development testing tools and methodologies and reviews and validates test plans.
• Responsible for QA readiness of software deliverables.
• Develops comprehensive documentation for multiple applications or subsystems.
• Establishes full project life cycle plans for complex projects across multiple platforms.
• Responsible for meeting project goals on-time and on-budget.
• Advises on risk assessment and risk management strategies for projects.
• Plans and coordinates project schedules and assignments for multiple projects.
• Acts as a primary liaison for business units to resolve various project/technology issues.
• Partners with business contacts on application/service solutions.
• Provides technology solutions to daily issues and technical evaluation estimates on technology initiatives.
• Advises senior management on technical strategy.
• Mentors peers and junior team members.
• Performs independent and complex technical and functional analysis for multiple projects supporting several divisional initiatives.
• Develops original and creative technical solutions to on-going development efforts.
Education and Experience:
Bachelor’s degree (or foreign education equivalent) in Computer Science, Engineering, Information Technology, Information Systems, Mathematics, Physics, or a closely related field and five (5) years of experience as a Principal Full Stack Engineer (or closely related occupation) performing responsive Web/Digital design and software development using object-oriented concepts.
Or, alternatively, Master’s degree (or foreign education equivalent) in Computer Science, Engineering, Information Technology, Information Systems, Mathematics, Physics, or a closely related field and three (3) years of experience as a Principal Full Stack Engineer (or closely related occupation) performing responsive Web/Digital design and software development using object-oriented concepts.
Skills and Knowledge:
Candidate must also possess:
• Demonstrated Expertise (“DE”) analyzing, designing, developing, testing, and implementing internet and client/server applications, using Java, Spring, Apache Tomcat, Angular, or JavaScript; and gathering business requirements, and analyzing and creating algorithms and flowcharts to depict the overall flow of business processes using Confluence.
• DE performing business acceptance testing, using OBIEE, Oracle, Java, Selenium, or Protractor; and performing production sign-off for release deployments, triage, and root cause analysis for production support incidents of application, using Angular, Java, or Oracle.
• DE developing enterprise financial services applications in distributed environments using J2EE, Spring MVC, Spring Boot, or ORM frameworks (Hibernate); and developing Web services (producers and consumers) using SOAP, REST, OpenAPI, Swagger API, or Tomcat servers.
• DE deploying distributed financial reporting applications for application build and release management on Docker, Rancher, Jenkins, GIT Stash, uDeploy, or Artifactory.