Job Summary The Senior Java Application Developer responsibilities include understanding and supporting the business of Flagstar Bank through the design, development and implementation of applications, application enhancements and new capabilities. They are expected to provide technical leadership in every stage of the development lifecycle, from analysis and design to program coding, testing, release and maintenance while adhering to current System Development Life Cycle (SDLC) processes. The senior application developer may act as a project manager on small to medium rigor projects. They will work closely with various customers including their immediate project teams, business domain experts and other technical staff members. This position will act as a technical resource to less experienced developers.
Technical Leadership - May lead a technical team and assist less experienced developers with technical deliverables.
Solution Design -Translates business and technical requirements into solution designs that satisfy the business needs and comply with approved standards.
Code Development - Develops and enhances application code. This includes unit testing to ensure all the functions are performing to specification.
Testing - Leads validation efforts by performing and/or assisting others in validating that the solution performs as expected. This includes and is not limited to unit testing, system integration testing, performance testing, regression testing, user acceptance testing and defect remediation.
Deployment and Transition Support - Successfully deploys the new or enhanced software. Ensures user acceptance is strong and functionality is suitable. Also responsible for a smooth transition of the product to the maintenance and enhancement team ensuring complete documentation and communication occurs at transition.
Ensure compliance with applicable federal, state and local laws and regulations. Complete all required compliance training. Maintain knowledge of and adhere to Flagstar's internal compliance policies and procedures. Take responsibility to keep up to date with changing regulations and policies.
Bachelor's Degree in Computer Science, Business, Engineering, Math or other related field plus 7 years of Test Driven Development experience preferred - OR - 10 years of comparable work experience. Master's Degree is preferred.
7 years of Java development experience (Finance/Lending industry experience a plus)
3 years of experience with various Software Development Life Cycle methods such as Agile, SCRUM, Waterfall, etc.
3 years of experience designing and building technical solutions using Java technologies such as Spring, Struts, Hibernate, Angular, etc.
3 years of using relational databases and writing basic queries (SQL and PL/SQL)
Strong communicator - Ability to communicate verbally and in technical writing to all levels of the organization in a proactive, contextually appropriate manner
Experience with Java-based enterprise service bus (ESB) software development is preferred
Strong problem solving skills and analytic skills with proven strength in applying root cause analysis
Knowledge of containers, AWS, Active MQ, CI/CD, DevOps
Proven ability to design and build technical solutions using applicable technologies; ability to demonstrate strong coding skills
Strong experience with web services, executing calls and interpreting responses (SOAP or REST)
Strong experience with incident management leading both on and off hour ad hoc support teams.
Strong experience in interpreting customer business needs and translating them into application and operational requirements.
Ability to prioritize work by dividing time, attention and effort between current project workload and on-going support tasks
Proven ability to adapt to change in process, procedure and priorities.
Strong organizational skills
Strong experience with incident management, leading both on and off-hours ad hoc support teams
Strong experience building, writing and executing test cases (using technologies such as JMeter, JUnit, TestNG, is a plus)
Knowledge of version control systems, Git / Bitbucket is preferred
ITIL Foundations certification is preferred
ITIL and Scrum Developer training is also preferred