Date ActiveAug 20, 2021 4:00:57 PM
Hours Per Week40
Location1515 N Rivercenter Dr-WI501
Job Description / Requirements
At HSA Bank, we’re working toward a world where everyone is empowered to save for a healthy future. Our offerings in the healthcare savings space drive down healthcare costs, increase access, and assist with decision-making for consumers, health plans, partners, and advisors.
Are you ready to join us?
As Application Architect, you will influence IT strategy, SDLC processes, governing policies, and solution architecture and design. You are a passionate thought leader and advocate for technology advancement, best practices, code standards, modernization and/or optimization of existing systems, and coaching to elevate technical team skills and knowledge. You are comfortable presenting information, asking insightful questions, socializing concepts/solutions, and building consensus at all levels of the organization. You see the “big picture” and use your experience and solid understanding of design principles to create architectural approaches that result in high quality IT solutions that are scalable, flexible, and maintainable.
The ideal candidate should have 10+ years of Software Development experience with advanced understanding of software architecture (.NET Framework, .NET Core, .NET 5, front end frameworks, integration frameworks), OOP design principles and patterns, CI/CD (GitLab, ADO, Jenkins), and Cloud Platforms (AWS, Azure).
Major Duties and Responsibilities
- Architectural Analysis
- Review and/or develop architectural models utilizing multiple viewpoints as necessary.
- Review and/or develop interface specifications.
- Evaluate design alternatives based on quality properties (e.g., performance, scalability, usability, ease of maintenance, security) and from a total cost of ownership standpoint.
- Make architectural design decisions based on best available (i.e. sometimes incomplete) information and document them as part of the architectural description.
- Select or develop architecturally significant scenarios for development in prototypes, proofs of concept, or early development iterations.
- Provide technical direction to personnel performing systems analysis and system/application development tasks.
- Develop and build strong relationships across the business to effectively influence and accomplish strategic application architecture objectives.
- Software Engineering
- Guide Agile DevOps/Scrum teams on the standards, protocols, and technologies that the system will use, what components to build and how they will collaborate, and areas such as availability, security, scalability, and performance.
- Work with technical teams to design, prototype, and prove the viability of solutions. Contribute to the development of complex solutions as needed.
- Meet with stakeholders to understand specific capability needs, issues, and concerns related to the system/application architecture.
- Assist with the development of resource and time estimates for system/application architecture definition and documentation tasks.
- Understand functional and nonfunctional requirements for complex systems/applications and help develop nonfunctional requirements if necessary.
- Assist teams with issues needing technical expertise or complex systems and/or programming knowledge. Mentor and develop new or less experienced team members.
- Evaluate application security findings and remediate as necessary with development teams. OWASP awareness is ideal.
- Understand corporate technology standards and policies and be able to communicate their implications to Scrum teams as they relate to specific development efforts.
- Understand the overall enterprise architecture and help Scrum teams rationalize their system/application architectures to the enterprise architecture where appropriate.
- Architecture Review Board
- Participate in committee that reviews new solution requests for applications, projects, and other initiatives.
- Provide application architecture expertise and input to the review board.
Education, Experience, and Skills
- Bachelor’s Degree in Computer Science, MIS, or related degree required. Advanced Degree is favorable.
- 10+ years of progressive software development experience in IT.
- 3+ years of experience in the design of component and/or service-based systems/applications.
- Industry knowledge in financial services or healthcare is not required, but favorable.
- Knowledge of object-oriented analysis and design, distributed computing, multi-tier systems/applications, and component/service-oriented development.
- Familiarity in other architectural styles (i.e. client/server, integration hub, publish/subscribe, peer-to-peer).
- Understanding of structure analysis, technical design, and database and file access methods.
- Strong technical proficiency of .NET development frameworks and C# programming language.
- Experience with Data Integrations (MuleSoft, Apigee) and ESB’s (BizTalk).
- Experience with cloud platforms (AWS, Azure).
- Experience with code collaboration and CI/CD pipelines (GitLab, ADO, Jenkins, Git, Bitbucket).
- Experience with Identify Management (Okta) and SSO best practices and protocols.
- Understanding of web security (OWASP) and vulnerability remediation work.
- Familiarity with code scan tools (GitLab, SonarQube, AppScan, Contrast).
- Knowledge of SAFe and experience working with Agile tools (Jira, Confluence).
- Experience with unit tests and automated test strategies and frameworks (SpecFlow).
- Familiarity with TSQL, SQL, Stored Procedures, SSIS, WCF Services, SOAP is a plus.
- Ability to interact with multiple projects concurrently.
- Ability to assist in the reconciliation of conflicting priorities and requirements.