
Senior Software Architect
OVERVIEW
A software architect is an experienced software developer or programmer who is responsible for making high-level design choices and decisions for software projects.
As a technical lead, they take a bird’s-eye view of a project and decide which platforms, languages, frameworks (ToGAF, libraries, tools, and other technologies should be used within a business.
Software architects also ensure development teams follow best practices, coding standards, and technical requirements.
DUTIES AND RESPONSIBILITIES
- Below are some of the responsibilities a software architect is expected to assume:
- Understand, communicate, and enforce the company software architecture strategy
- Defining and designing the software architecture for a project, including selecting the appropriate technologies, frameworks, and patterns to create a robust and scalable system.
- Collaborating with stakeholders, such as project managers, business analysts, and software developers, to understand and address their needs and requirements, ensuring that the software architecture aligns with the project’s goals.
- Ensuring that the software system is scalable, maintainable, and secure by making high-level design choices and setting technical standards for the project.
- Providing technical leadership and guidance to software development teams, mentoring less experienced developers, and sharing knowledge on best practices and architectural principles.
- Evaluating and selecting third-party tools, libraries, and platforms that best suit the project’s requirements while considering factors such as cost, performance, and compatibility.
- Identifying and addressing potential technical risks and challenges, proactively assessing the system’s architecture to identify any potential issues, and devising strategies to mitigate them.
- Creating and maintaining comprehensive software architecture documentation, including design decisions, architectural patterns, and technical standards, to serve as a reference for the development team and other stakeholders throughout the product roadmap.
- Ensuring that the software architecture adheres to industry best practices and standards and continuously staying up-to-date with the latest trends and technologies to retain a competitive edge in the field.
BUSINESS SOLUTION DELIVERY
- Deliver Business Solutions to agreed quality, time, and cost scales.
- Define Architecture standards.
- Provide conceptual designs and solutions to client requirements.
- Ensure adherence to best practices.
LIASON AND COORDINATION
- Oversee architectural design and integration content management, portals, collaboration, business processes or other solutions.
- Liaise with service providers and internal stakeholders to coordinate services
- Work with Business Analyst to interpret requirements for application enhancements and development.
- Provide support for projects during installation and post-implementation.
JOB QUALIFICATIONS AND SKILL SETS
Below are the qualifications expected of a software architect:
- Bachelor’s degree in computer science, information technology, software architecture, or related field
- 5-8 years of experience leading software development teams
- Knowledge of object-oriented programming and software design patterns
- Strong analytical and problem-solving abilities.
- Familiarity with software build tools, such as Gradle and Maven
- Familiarity with software development frameworks, such as Spring and Hibernate
- Certification in Architecture such as Togaf, Safe etc
- Familiarity with Agile and DevOps methodologies and tools
- Familiarity with Cloud technologies such as Azure,AWS
- Familiarity with software version control systems such as Git and SVN
- Experience with agile software development methodologies and testing frameworks, such as JUnit and Selenium
- Strong interpersonal communication skills
- Big-picture problem-solving skills
Job Category: Software Architect
Job Type: Full Time
Job Location: Woodmead Sandton Johannesburg