About Ameriprise:With the right company, life can be brilliant. At Ameriprise, we’re not just in the business of helping clients with
With the right company, life can be brilliant. At Ameriprise, we’re not just in the business of helping clients with their financial goals — we also help our advisors and employees reach their true potential. Be part of an inclusive, collaborative culture that rewards you for your contributions and work with other talented individuals who share your passion for doing great work. You’ll also have plenty of opportunities to make your mark at the office and a difference in your community. So if you're talented, driven and want to work for a strong ethical company that cares, take the next step to create a brilliant career at Ameriprise Financial.
Contribute to software development activities by developing, documenting, testing, modifying and maintaining new and existing software applications. Apply standard techniques, procedures, and criteria to the development life cycle. Bring application(s) and technology expertise to the specification and design development process. Provide technical expertise on assigned applications, to include interfaces and interrelationships with other applications and systems. Receive technical guidance and day-to-day direction from Software Engineers and Senior Software Engineers.
- Major Areas of Accountability:
- Software Development/Programming ~~ Maintenance ~~ Testing & Testing Support ~~ Analyze Performance ~~ Application Subject Matter Expertise ~~ Support ~~ Maintain & Share Knowledge
- Utilize applications expertise to participate in the design process of new and existing applications/programs (including feature and functionality planning), then write new program code based on defined specifications and programming standards. Modify code, test and troubleshoot existing programs utilizing the appropriate hardware, database, and programming technology. Analyze end user data and business needs to format final product and assure user-orientation and optimal program/system performance.
- Maintain and modify programs/software. Implement approved changes by amending flow charts, developing detailed programming logic, and making changes to code. Write and maintain development/programming/systems documentation, as well as operations and user guides (as required). Document development/programming problems and resolutions for future reference.
- Effectively unit test all code and programs prior to releasing them to the quality assurance (QA) team. Resolve all unit test issues in a timely manner. Collaborate with the QA team to identify test cases and create/mine 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 ultimately into production. Provide implementation/production support as required.
- Analyze performance of programs and take action to correct deficiencies based on consultation with end users, Business Analysts and senior development team members. Provide input to prolong application life or recommend replacement. Confer with senior development team members to gain understanding of needed changes or modifications of existing programs. Assist in resolution of questions of program intent, data input, output requirements, and inclusion of internal checks and controls.
- Evaluate and thoroughly understand complex interrelationships between assigned applications and systems, such as whether a contemplated change in one application would impact or cause unwanted results in a related part of that application or other applications/systems. Proactively provide subject matter expertise regarding assigned application(s) to other members of the technology and business teams to ensure quality and minimize impact on other applications and business processes.
- Support the installation planning for application program requirements. Support the end-user and technical operations staff as required. Assist senior development staff with the integration of technology within and across the capability domains.
- Act as a resource to junior development staff regarding technology, methodologies and standards. Proactively share knowledge and collaborate with development team members, Business Analysts and Technology Operations to assure quick and effective responses to customer needs (internal and/or external). Maintain up-to-date business domain knowledge and technical skills in software development technologies and methodologies.
- Bachelors degree or equivalent
- 3+ years of experience
- 3+ years of experience coding in relevant programming languages (specific required languages will vary by position), providing a deep understanding of programming languages and procedures.
- 3+ years of experience developing and maintaining programming/systems documentation and technical instructions in the use of programs and/or program modifications.
- 3+ years of experience coding in multiple environments.
- Solid understanding of the Software Development Life Cycle (SDLC).
- 5+ years data warehouse development, data modeling, and/or development experience
- Experience with Power BI Pro/Cloud; SQL, ASP.NET
- Adept at processing computer data and formatting and generating reports.
- Proven ability to be successful in a multi-sourced, multi-vendor environment.
- Excellent oral and written communication skills along with logical, analytical and abstract thinking skil