Sr Software Engineer

Overview

On Site
Full Time

Skills

Performance monitoring
Evaluation
Level design
Software development methodology
Interfaces
Specification
Code review
Systems design
Operations
User guides
Documentation
Unit testing
Quality assurance
Test cases
Data
Testing
Mentorship
IT management
Governance
Strategy
Security analysis
Leadership
Root cause analysis
Corrective and preventive action
Production support
IMPACT
Computer science
Programming languages
Software development
Analytical skill
Design
Knowledge base
Technical communication
Life insurance
Product development
Underwriting
Version control
Git
JIRA
Microsoft Visual Studio
JetBrains
IntelliJ IDEA
Eclipse
ASP.NET
Cloud computing
Amazon Web Services
Microsoft Azure
Financial services
Management
Financial planning
FOCUS
Investments
Insurance
Annuities
Finance
SAP BASIS
Law

Job Details

Serve as a resource on software development projects and lead the development team through the design, development, documentation, testing, and modification of existing and new software applications, championing standard techniques, procedures, and criteria. Participate in architecture design, performance monitoring, product evaluation, and buy versus build decisions. Track and communicate development project status, dependencies, and risks and mitigation strategies to the project team and leadership. Provide technical expertise to the business.
Key Responsibilities
  • Execute and/or oversee the creation of low level design documents (including code samples/outlines) and detailed engineering specifications based on complex 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 deliverables using the Software Development Life-Cycle (SDLC).
  • Partner with the business and project team to gather 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 execute corrective action in response to production support issues, as required.
  • Lead the code review process to ensure development work adheres to standards and 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 effectively 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 deliverables. Respond to all inquiries and issues in a timely manner 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 oversight to ensure adherence 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 planful and timely manner. Evaluate, troubleshoot, and lead root-cause analysis for production issues and system failures. Determine corrective action and improvements to prevent recurrence. Provide implementation/production support, as required.
  • 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). Provide expertise in the selection and implementation of development tools and best practices, 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 stack (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.

Preferred Qualifications
  • 7-10 years of experience in technology and/or software development, progressing in complexity and responsibility.
  • 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 knowledgebase to multiple and evolving programs and languages.
  • Superior technical communication skills.
  • Experience with Life Insurance Product development or Underwriting.
  • Experience with Tools like Version Control (GIT, CVS), Bit Bucket, Jira etc.
  • Experience with using Visual Studio, Visual Studio Code and IntelliJ or Eclipse.
  • 'Experience working on ASP.NET technology Experience with Cloud Technology (AWS/Azure etc.) will be a plus.
About Our Company
We're a diversified financial services leader with more than $1 trillion in assets under management and administration as of 2022. Our team of 20,000 people in more than 20 countries, advise and manage assets and income of more than 2 million individual, small business and institutional clients. We are a longstanding leader in financial planning and advice, a global asset manager and an insurer. Our unwavering focus on our clients and strong financial foundation connects each of our unique businesses - Ameriprise Financial, Columbia Threadneedle Investments and RiverSource Insurance and Annuities. Here, we foster meaningful careers, invest in the future, and make a difference for clients, institutions and communities around the world.

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.

Full-Time/Part-Time

Full time

Exempt/Non-Exempt

Exempt

Job Family Group

Technology

Line of Business

TECH Technology
Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.