Careers

Senior Angular Full-Stack Developer

ROLE SUMMARY:

The primary objective of this position will be to produce and implement functional software solutions. The MagicOrange product is an exciting profitability and cost transparency offering which is pivotal to MagicOrange’s success.

This person will be a member of the MagicOrange team and operate in conjunction with the wider business, delivering measurable business results by developing high-quality software that is aligned with user needs and business goals.

Requires candidate with ability to prioritize well, communicate clearly, have a consistent track record of delivery and excellent software developer skills.  Must be able to work across multiple facets of the project and juggle multiple responsibilities at the same time. Strong analytic capability and the ability to create innovative solutions.

We are looking for an experienced, highly motivated individual, wanting to grow their career in a fast-paced environment, whose passion is to develop elegantly-crafted, thoughtfully-designed, quality code.

RESPONSIBILITIES:

The primary responsibility of the Full Stack Developer includes:

  • Building and maintaining our Azure-hosted web app (Angular/Typescript), REST API (C#/.NET) and the backend Azure SQL database.
  • Creating new features and enhancements to meet acceptance criteria.
  • Working in a Scrum Team of cross-functional skills in tight collaboration practising Agile.
  • Participating in backlog refinement sessions.
  • Participating in analysis & design sessions.
  • Championing innovation, simplicity, tech consolidation and new ideas.
  • Assisting our Support Desk when required with product troubleshooting

REQUIRED LEVEL OF EDUCATION AND EXPERIENCE 

EDUCATIONAL BACKGROUND:

  • Matric
  • Degree in Information Systems, Engineering or Computer Sciences or equivalent qualification required
  • Advantageous: Microsoft Azure related certification

PREVIOUS EXPERIENCE & SKILLS:

  • Proven experience as a full-stack / front-end developer
  • Strong software engineering background covering SOLID principles with .Net /C# and Angular development experience
  • 5+ years in an agile software development environment ie. senior developer experience or the experience to move into a senior role
  • Experience developing REST-based APIs
  • Front end development experience with strong TypeScript / JavaScript
  • Experience with single page application frameworks (Angular/AngularJS)
  • Experience of working in a Scrum Team and an Agile environment
  • Experience in UI development
  • Strong ability to interact with client business areas to elicit requirements and drive designs
  • Strong organisational and project management skills
  • Excellent communication skills
  • Excellent data analysis skills
  • Excellent problem-solving skills
  • Excellent Attention to detail

Required Technical Skills

  • HTML5
  • Angular 2+ (MUST) / Angular JS
  • C#/.NET Core
  • CSS
  • TypeScript (MUST)
  • REST APIs
  • SQL Azure DB / SQL DACPAC Development
  • Experience with Visual Studio 2019
  • Experience with Visual Studio Code

Advantageous Skills:

  • Experience with Cloud-based technologies including Azure and experience with some of the Azure stack of services
  • Experience in CI/CD automation especially Azure DevOps
  • Experience writing unit tests and integration tests
  • Experience with Azure Analysis Services
  • Relevant experience in self-service BI tools such as Power BI
  • Financial services experience

UX Designer

ROLE SUMMARY:

The primary objective of this position is to measure and optimise the MagicOrange product to improve ease of use (usability), and create the best user experience by exploring many different approaches to solve end-users’ problems.

The UX Designer will be able to understand the business requirements and any technical limitations, as well as be responsible for conceiving and conducting user research, interviews and surveys, and translating them into sitemaps, user flows, customer journey maps, wireframes, mockups and prototypes.

The UX designer will also be expected to design the overall functionality of the product, and in order to ensure a great user experience, iterate upon it in accordance with user-testing.

The MagicOrange product is an exciting profitability and cost transparency offering which is pivotal to MagicOrange’s success.

The UX designer will be a member of the MagicOrange team and operate in conjunction with the wider business, delivering measurable business results by developing high-quality software that is aligned with user needs and business goals.

RESPONSIBILITIES:

  • Translate concepts into user flows, wireframes, mockups and prototypes that lead to intuitive user experiences.
  • Facilitate the product vision by researching, conceiving, sketching, prototyping and user-testing experiences for digital products.
  • Design and deliver wireframes, user stories, user journeys, and mockups optimized for a wide range of devices and interfaces.
  • Identify design problems and devise elegant solutions.
  • Make strategic design and user-experience decisions related to core, and new, functions and feature.
  • Take a user-centered design approach and rapidly test and iterate your designs.
  • Collaborate with other team members and stakeholders.
  • Ask smart questions, take risks and champion new ideas.

REQUIRED LEVEL OF EDUCATION AND EXPERIENCE

EDUCATIONAL BACKGROUND:

  • Matric
  • Degree or equivalent qualification required

PREVIOUS EXPERIENCE:

  • 5+ years experience designing complex solutions for complete digital environments
  • UX design best practices to design solutions

SKILLS AND REQUIREMENTS:

  • Experience with UX software such as Sketch, OmniGraffle, Axure, InVision, UXPin, Balsamiq, Framer
  • Experience with HTML5, CSS3, and JavaScript

 

Development Manager

ROLE SUMMARY:

The primary purpose of the Development Manager role is to manage the productivity and efficiency of the development team and ensure recruitment demands are met. The role is responsible to implement and maintain processes and high standards to be followed by the development team to meet client requirements throughout the entire Software Development Life Cycle (SDLC), whilst ensuring the teams career aspirations and growth are being met.

The development manager is responsible for the leadership, management, recruitment, and coordination of the development team, comprising software developers, BI developers, quality assurance and support desk.

Manage and be accountable for:

  • Design and Development of high-quality product solutions
  • Outputs and performance of the development team
  • Structure, processes, governance & recruitment of the development function

RESPONSIBILITIES:

MANAGE DEVELOPMENT TEAM

  • Manage day to day activities of the team by defining, implementing, and maintaining a coherent, progressive development strategy.
  • Ensures effective leadership, management, and integration of the teams within development team is maintained on an ongoing basis.
  • Conducts resource planning across Development and recruits new staff according to requirements.
  • Improves the productivity of the Development team in any way possible.
  • Own all facets of performance and career management for the team (regular one on ones with all team members required)
  • Manages personal and professional development within the team (includes but is not limited to job related training and career development) on an on-going basis.
  • Conducts quarterly performance appraisals ensuring team members receive constructive feedback.
  • Coaches and mentors team members by providing guidance and encouragement to stretch skills and implement own decisions to challenging situations.
  • Provides team support through assisting with the completion of project tasks as and when required.

MANAGES DEVELOPMENT PROCESS

  • Implements and reports on key performance indicators.
  • Drives and matures development estimation capability.
  • Release and deployment management
  • Responsible for product quality meeting high standards.
  • Ensures all development ceremonies are executed – refinement, sprint planning, stand-ups, sprint demo, sprint retro.
  • Ensures technical & process documentation repository is organized and easily accessible.
  • Removes development obstacles.
  • Works with Scrum Master to ensure development team is able to forecast completion dates.
  • Bugs/Issue resolution – in dev and from Operations/Live environment
  • Manages software audit and compliance

ESTABLISH BUSINESS PROCESS MANAGEMENT PRACTICES

  • Defines and implements development standards
  • Works in collaboration with the Scrum Master in reassessing and streamlining development processes to ensure the team works smarter in terms of resource allocation, improving communication, increasing accountability and meeting deadlines.
  • Implements development tracking system to ensure all operational requirements of product delivery are accounted for on a “real-time” basis.

REQUIRED LEVEL OF EDUCATION AND EXPERIENCE

EDUCATIONAL BACKGROUND:

  • Degree in Information Systems, Engineering or Computer Sciences or equivalent qualification required

PREVIOUS EXPERIENCE & SKILLS:

  • 8-10 years in an agile software development environment
  • Advantageous: Financial services experience
  • 3+ years in a development management role
  • System integration experience
  • SSIS, SSRS, SSAS experience
  • Has led and directed multiple projects or one complex project.
  • Has led and managed a team of individuals, responsible for their growth and career development.
  • Excellent understanding of software development life cycles
  • Broad knowledge of project management methodology
  • Technically sound knowledge of Microsoft platforms
  • Strong understanding of client and business requirements.
  • Strong awareness of technologies and new trends.
  • Solid knowledge of the product and technology stack.
  • Broad knowledge of different methodologies, processes and practices applied across software development life cycles.
  • Ability to think logically and implement processes with ease.
  • Ability to manage multiple projects
  • Strong interaction skills
  • Strong customer focus
  • Ability to negotiate & persuade others
  • Strong leadership/ management skills
  • Ability to mentor & coach others
  • Written and verbal communication skills and analytical abilities