Software System Designer II
NTT Corporation
- Johannesburg, Gauteng
- Permanent
- Part-time
- Conduct system design activities
- Review detailed application, software, and system components across a variety of technology stacks
- Ensure that architectural solutions meet technical and functional requirements
- Review existing system architecture and recommend improvements
- Participate in engineering reviews to determine any ambiguities
- Investigate and scope change requests to determine the scale of work to be done and estimate the timeframe and input required
- Determine system loads and volumes as input into infrastructure requirements
- Ensure that proposed and existing systems architectures are aligned with the company’s goals and strategies
- Enable the design and development of new systems and solutions
- Ensure that new systems and solutions conform to current system architecture and/or align to strategic system architectural direction
- Conduct architectural analysis, evaluation, and design of systems that support and seek to solve complex business and technical problems
- Enable and ensure that system architecture is delivered in the form of robust and scalable solutions to business problems and needs
- Identify, evaluate, and assess risks in order to mitigate them and eliminate any factor that may interfere or hinder the delivery of the architectural solution and dependent functional requirements
- Specify the solutions functional and technical requirements, and implementation phases required in order to deliver on and solve complex business problems
- Implement processes for integrating architectural solutions
- Implement architectural governance, standards, metrics for measuring, monitoring and improving architecture
- Implement and/or maintain the use of fitness functions to ensure architectural success
- Proactively identify potential problems that could be remediated by more effective architectural solutions
- Ensure team members understand system architectural implications of requirements
- Strong communication and organisational skills
- Sound business acumen
- Ability to effectively deal with stakeholders in challenging situations.
- Ability to navigate through complexity and ambiguity
- Strong understanding of system architecture, design, and delivery
- understanding of regulatory requirements and organisational standards including security
- Knowledge of the system design life cycle models
- Ability to design systems compatible with cloud computing architectures and selection of components
- Ability to design and select system components
- Planning and decision-making skills
- Good verbal and written communication skills
- Ability to use a variety of design tools
- Ability to problem-solve and apply critical thinking
- Knowledge of software development practices, including Agile and CI/CD
- Experience with containerization technologies, such as Docker/Kubernetes
- Proficiency in data security and privacy best practices.
- Knowledge of clean code concepts, design patterns. Test driven (TDD) and behavioural driven development (BDD)
- Bachelor’s degree or equivalent in Information Technology, Computer Science or related etc.
- Net, Angular, Android, Front-End, Integration Technologies(REST, SOAP),iOS, Java, Java (JEE/EJB), Kibana, Service-Oriented Architecture Project demand needs MAUI, .NET, Angular, SQL, JavaScript expertise
- Seasoned experience in similar IT roles, with a focus on system design / architecture engineering
- Proven working experience in a large-scale organisation
- Seasoned experience, judgment and drive to plan, make decisions and accomplish individual and team goals
- Seasoned experience with software development lifecycles
- Seasoned experience working in a team-oriented, collaborative environment
- Seasoned systems and/or software development experience is essential
- understanding of cloud-based architectures, preferably in popular cloud platforms (Azure, AWS).
- Proficiency in designing and implementing scalable, distributed, and high-performance systems.
- Seasoned knowledge of software design and architecture, ideally with experience dealing with large datasets.