Job description
Serve as lead software engineer on a product team of 7 – 10 people working closely with the team members on discovery, design, and build to deliver new product features, enhancements, and fixes. This role will be roughly 50% hands on development and coding and 50% overseeing various delivery aspects as well as mentoring other software engineers.
Responsibilities
Required Qualifications
Preferred Qualifications
About Our Company
The Ameriprise Financial Technology team mission is to create innovative technology solutions and engaging digital experiences for our clients, advisors, and employees. We embrace an inclusive and collaborative culture that allows us to partner across the business and lend our expertise in the areas of corporate computing, network infrastructure and security. We celebrate the unique qualities and reward the contributions of our talented, passionate employees. If you’re motivated and want to work for a strong, ethical company that cares about you and your community, take the next step with Ameriprise Technology.
Ameriprise Financial is an equal opportunity employer. We consider all qualified applicants without regard to race, color, religion, sex, national origin, genetic information, age, sexual orientation, citizenship, gender identity, disability, veteran status, marital status, family status or any other basis prohibited by law.
Responsibilities
- Implement and/or oversee the creation of low level design documents (including code samples/outlines) and detailed engineering specifications based on sophisticated business, user, and non-functional (e.g. performance, reliability, balance, and controls) requirements. Write code that adheres to standards, procedures, and techniques. Maintain integrity of existing program logic according to specifications. Complete work using the Software Development Life-Cycle (SDLC).
- Partner with the business and project team to bring together requirements and fully understand project goals, and then use this information to effectively plan and lead the development process. Participate in project design walk-throughs. Evaluate interrelationships between applications and design for effective interfaces between interrelated applications/systems. Appropriately address failure scenarios in design work. Proactively review then plan and implement corrective action in response to production support issues, as the need arises.
- Be responsible for the code review process to ensure development work adheres to specifications, which includes peer review, as well as code review external to development team. Write and/or revise system design documentation and operations documentation to include providing required input into operation support manuals and user guides. Create and properly archive all project related documentation.
- Ensure all code is efficiently unit tested prior to being released to the quality assurance team. Resolve all unit test issues in a timely manner. Assist the quality assurance team in identifying test cases and in creating/mining test data to enable a thorough test of all development work. Respond to all inquiries and issues when encouraged as the developed code/program moves through the testing process and into production. Approve code to be put into production.
- Provide oversight, mentorship, and technical leadership to a development team, which consists of employees, contractors, and vendor partner resources, to ensure the timely execution of project deliverables. Provide governance guidance to ensure alignment to development strategy, standards, tools, and procedures. Guide the development teams to consistently apply appropriate development principles and standards during all phases of the development life-cycle.
- Conduct annual asset health and security assessment. Improve health of system assets by identifying enhancements to improve performance, reliability, and resource consumption. Track standards exceptions (e.g. security gaps) to ensure they are addressed in a timely manner. Evaluate, solve, and lead root-cause analysis for production issues and system failures. Resolve corrective action and improvements to prevent recurrence. Provide implementation/production support, as the need arises.
- Maintain up-to-date skills in software development technologies and a broad understanding of the business, business needs, and how applications/assets drive and support the business (understand the greater impact of assets/applications and development work). Share a point of view in the selection and implementation of development tools and standard processes, as well as recommendations on priority and asset investments. Establish and maintain productive working relationships with business partners and project teams. Performs other duties as assigned
Required Qualifications
- Bachelors degree or equivalent (4-years) in Computer Science, Engineering, or related field; or equivalent work experience.
- 7-10 years of relevant experience required.
- 7+ years of experience coding and/or designing in multiple programming languages, including focused experience in relevant/targeted software stacka (specific required software stack will vary by position).
- 7+ years of practical experience and proven success with the design and build of complex software applications in multiple environments.
- Experience working with vendor partner (on- and off-shore) resources.
- Experience with Java 8 and unit testing.
Preferred Qualifications
- Proven success in the design of complex, best-in-class enterprise-level software applications.
- Superior analytical and business skills to reconcile conflicting objectives and find/design acceptable compromises within existing constraints.
- Expert level application of technology/engineering knowledge-base to multiple and evolving programs and languages.
- Superior technical communication skills.
- Exposure in any Actor based framework like akka
- Exposure to working in a cloud/distributed environment
- Front End Development, Javascript, React
- Candidates should have coordinated and developed alongside offshore team previously
- Expertise in JAVA/J2EE programming language utilizing Spring framework.
- Experience in working on Multithreaded Systems.
- Strong Experience RESTful services with security/availability/performance aspects being thorough
- Exposure to Unit testing framework like TestNG, JUnit.
- Good knowledge on system design and various design patterns
- Strong systems fundamentals related to performance, scale and factors inside/outside the JVM that impact the system.
- Expertise on GIT and Maven usage.
- Experience in working in Agile methodologies
- Experience in continuous integration
- Experience in Micro Services development.
- Containerization technologies – Kubernetes or Docker
About Our Company
The Ameriprise Financial Technology team mission is to create innovative technology solutions and engaging digital experiences for our clients, advisors, and employees. We embrace an inclusive and collaborative culture that allows us to partner across the business and lend our expertise in the areas of corporate computing, network infrastructure and security. We celebrate the unique qualities and reward the contributions of our talented, passionate employees. If you’re motivated and want to work for a strong, ethical company that cares about you and your community, take the next step with Ameriprise Technology.
Ameriprise Financial is an equal opportunity employer. We consider all qualified applicants without regard to race, color, religion, sex, national origin, genetic information, age, sexual orientation, citizenship, gender identity, disability, veteran status, marital status, family status or any other basis prohibited by law.
colinoncars.com is the go-to platform for job seekers looking for the best job postings from around the web. With a focus on quality, the platform guarantees that all job postings are from reliable sources and are up-to-date. It also offers a variety of tools to help users find the perfect job for them, such as searching by location and filtering by industry. Furthermore, colinoncars.com provides helpful resources like resume tips and career advice to give job seekers an edge in their search. With its commitment to quality and user-friendliness, colinoncars.com is the ideal place to find your next job.