Senior Software Architect
The primary role of the Senior Software Architect is to provide hands-on architecture leadership, guidance and mentoring to Intelex’s engineering teams, be a close collaborator and trusted advisor to the Chief Architect, Product Managers and ensure the delivery of high-quality, resilient, robust, scalable, and evolvable cloud-native solutions!
Responsibilities and Deliverables
- Overall responsibility for technical architecture and design of the product or product sub-system
- Lead technology initiatives from architecture perspective from an innovative idea to deployed solutions by using a variety of technologies, tools, and languages.
- Develop and deliver long-term strategic goals and roadmaps for technical architecture vision and standards.
- Deliver clear, well-communicated and complete design documents
- Collaborate with the product, engineering, operations, security and support teams to review and assist with defining technical solutions, recommend approaches and measurable results.
- Develop a roadmap for migrating a monolithic application to a cloud-native micro-service architecture.
- Code review at macro level to ensure application consistency.
- Continuously keep an eye on and experiment with the latest innovative technologies, and tools; seeking opportunities to demonstrate them in our products; and support technology goals.
- Through example and training, help team leads and developers on the teams raise their level of technical competence.
- Review and suggest improvements in automation, continuous integration/continuous deployment (CI/CD) practices, security, and platform services.
- Provide forward-thinking technical expertise and thought leadership in current and emerging technologies, development practices, market trends and standard processes.
- Contribute to, or facilitate the overall application, platform design.
- Provide Order-of-Magnitude estimates for technical efforts, if needed.
- Produce standardized and consistent technical architecture specifications.
- Responsible for their own committed code.
- Perform testing on their own code to ensure quality of their work prior to handing it to QA.
- Review PRs committed by technical teams.
- Follow existing development practices including technical design, coding, unit testing and documenting.
- Work within time constraints to meet deadlines. Identify and communicate issues within project deliveries.
- Take an active role in SCRUM team activities (estimation, planning, daily stand-ups, retrospectives, show and tell) when appropriate.
- Follow and ensure that development practices and processes are being followed. including. designing, coding, unit testing, non-functional verification, and documenting.
- Provide technical leadership by improving the development and engineering processes.
- Analyze risks and compromises, balance security, legal requirements, and usability desirability.
- Perform release management tasks when needed, especially for new initiatives.
- Advocate and support Intelex processes.
- Provide technical leadership and mentoring to a team of incredibly dedicated and motivated architects to engineer solutions with the highest engineering excellence.
- Guide and mentor engineers to foster highly technical and technology excellence culture
- Work with team(s) of engineers, providing technical vision and road map for product or product sub-system
- Reports to the VP or Director of Engineering
- Builds and maintains relationships with multi-functional teams within the organization.
Skills & Work Traits
- Highly motivated, creative, and self-directed with a commitment to excellence.
- Demonstrated commitment to assessing, evaluating, and prototyping technologies.
- Demonstrated commitment to continuous learning & professional development.
- Exceptional analysis and troubleshooting skills, and ability to locate, use, and disseminate information.
- Strong mentoring, abstract thinking, conflict resolution & communication skills.
- Advanced understanding of cloud-native architecture concepts and proven experience of architecting, evolving, operating multi-tenant cloud native, distributed applications.
- Strong knowledge of standard methodologies for high availability, scalability, resilience, performance, and security requirements in the cloud.
- Strong domain knowledge in platform & application architecture, including multi-threaded, multi-tiered, service oriented, event-based, micro-service architectures.
- Advanced understanding of domain driven design principles, object-oriented programming concepts, design patterns, data structures and algorithms.
- Expertise applying both architectural and implementation patterns in web, mobile and data application design.
- Strong understanding of data architecture patterns, data pipelines, relational and document database technologies covering design, queries, transactions, stored procedures, triggers, constraints, synchronization, and optimizations.
- Strong understanding of non-functional behaviors, including (but not limited to) performance, scalability / resource utilization, resiliency & security, high availability.
- Strong understanding and proven experience with cloud native technologies and architecture, container technologies (Docker, Kubernetes, Functions, etc.), Azure, AWS, Google Cloud.
- Strong understanding of data and analytics solution architecture, including experience with Big Data.
- Seven or more years of web applications development experience
- Three or more years of experience in a senior developer, architect, or team lead role
- Professional experience within a software product or SaaS organization
- Professional experience within an agile development practice
- Technical training and certifications – architecture, cloud, mobile, security, data privacy
- Bachelor’s Degree or College Diploma in Computer Science, Information Systems, or equivalent experience
- Master’s Degree and/or vendor certifications (such as Microsoft Certified Professional) valued
- Please note that this role requires a satisfactory Criminal Background Check and Public Safety Verification
We are an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, color, national origin, sex, gender, gender expression, sexual orientation, age, marital status, veteran status, or disability status. We will ensure that individuals with disabilities are provided reasonable accommodation to participate in the job application or interview process, to perform essential job functions, and to receive other benefits and privileges of employment. Please contact us to request accommodation.