The Software Architect will lead the design effort on a variety of solutions projects in a highly collaborative, fast-paced environment. This role designs innovative solutions to meet real market opportunities, working closely with product managers, business experts, and teams of software engineers, to develop new solution offerings and improve existing product components, within existing and new solutions architectures.
The Software Architect will consult with Product Development senior leadership and Product Managers on the incorporation of new third-party products, partner solutions and information systems technologies. Occasionally may conduct on-site client analysis and design work for highly complex solutions or complex integration challenges, and may act as Sales Engineer and/or Project Manager/Technical Team Lead on Innovation and/or New Architecture Projects. The Software Architect will generally lead in highly responsible/accountable tasks with minimal supervision
- Performs complex architectural, multi-solution component design activities, requiring extensive research and analysis, particularly where requirements are fuzzy and several technical options might apply. Evaluates and identifies new information systems architecture components, techniques and technologies for implementation, on multi-year solution initiatives. Mentors consulting software engineers in their researches, and consults with them on design models, target environments, performance, and capacity criteria and foundations for future enhancements.
- Is the acknowledged SME in partner solutions interoperability, architectural conflicts and best practice design, development, and deployment for more than one current solution/ Mentors teams in the most complex product analysis and design workshops.
- As the Senior Technical Resource, will be called to research the most complex problems referred by Consulting SE’S, define technical options, and develop solutions to the problems. Mentors consulting SE’s in highly complex bug verification, release testing and beta support for assigned products.
- Drive performance and application troubleshooting. In all highly complex bug cases, seeks opportunities to mentor add educate the Development Teams on issues found, root causes and permanent corrective actions.
- Leads Development Teams in most complex components/product design and delivery tasks to meet project objectives; is valued and trusted by the Consulting SE’s, Lead SE’s Senior SE’s, SE’s, ASE’s as an excellent technical communicator, mentor, and best practice design and development advocate. Efficiently and accurately documents all work performed.
- Mentors consulting SE’s in all techniques for ensuring the technical integrity of software components, in design and development to meet Product/ Solution Roadmap.
- In the launch of New Solutions, acts as the key technical interface, including technical liaison and communication to access needs, and identify and provide solutions; provides technical follow -through from design to completion.
- Provides engineering leadership to the design, development and delivery of vendor/partner software interoperability, including resolution of any issues.
- Acts in a lead technical role with the Product Developmental Management Team in the implementation of all architectural components re-use and maintenance, across multiple solutions.
- Leads the review process for all solution architecture documents.
- Participates in specification reviews to ensure system requirements can be translated into valid software architecture, as well as assisting with user story creation.
- Mentors and leads Development Teams to comply with the Atern SDLC philosophy, principles, and practices.
- Reinforces secure coding practices with Development Teams.
- Position may include other duties as determined by the company.
Required Qualifications :
- Bachelors (or equivalent experience) in computer systems, information systems, or software engineering.
- 10+ years of distributed software development experience
- Minimum of 3 years experience in a lead developer role
- Must be an acknowledged SME in the design and deployment of information systems architectural components, with a good working knowledge of the latest software solutions and architecture issues and trends.
- Experience with the design and implementation of microservice architecture
- Experience with one or more of the following technologies: .NET Core, RabbitMQ, Cassandra, Python.
- Interpersonal skills and the proven ability to technically mentor multiple teams with diverse levels of expertise to as successful delivery of several concurrent software solutions or products
- Written and verbal communication skills across all levels of internal and external customers; recognized as a Product Development technical advocate in strategic discussions and workshops with senior management
- Advanced level of Systems Development experience, a recognized SME in at least two languages, CASE tool sets, and application development frameworks.