Junior Software Development Engineer Live (CPT)

We Want You:

BET Software is seeking three enthusiastic Junior Software Development Engineers (Live) to join our Cape Town team. In this role, you’ll be at the forefront of software creation—writing code, fixing errors, adapting to new hardware, and enhancing performance. Your responsibilities will also include system testing, validation, and collaborating with customers or departments on technical issues related to software design and maintenance.  Additionally, you’ll participate in scheduled standby duties and assist with critical P1 outages. If you’re ready to embark on an exciting journey, apply now.

You Bring:

  • Degree / Diploma in computer science or related field.
  • At least 1-2 years’ experience within a development environment or successful completion of the BET Software Graduate programme.
  • 1-2 years SQL Experience or successful completion of the BET Software Graduate programme.
  • 1-2 years C# experience or successful completion of the BET Software Graduate programme.
  • 1-2 years .NET core experience or successful completion of the BET Software Graduate programme.
  • 1-2 years of restful API experience or successful completion of the BET Software Graduate Programme.
  • 1-2 years of server/client-side language is advantageous.
  • Understanding of key design principles.
  • Proficiency in HTML, CSS, JavaScript, and jQuery.
  • Understanding of server-side CSS.
  • Good written and verbal communication skills.
  • Strong attention to detail.
  • Experience with responsive and adaptive design.
  • Understanding of SEO principles.
  • Good problem-solving skills.
  • Good interpersonal skills.

What You’ll Do:

Technical Outputs:

Design Fit for Purpose Solutions & Algorithms

  • Design solutions using most appropriate approved architectural pattern.
  • Design solutions for multi-tier architectures.
  • Ensure design meets best practices and are Test, DevOps and Support friendly.

Perform Planning

  • Identify and establish objectives for self.
  • Work on objectives or goals within timeline.
  • Consider all reasonable factors, impediments, and obstacles.

Implementation – Ensure the Solution is Functionally Complete

  • Deliver a solution which covers all the agreed specified tasks and user objectives.
  • Deliver a correct solution which provides the correct results with the needed degree of precision.
  • Ensure checked in code is reviewed to ensure standards are met.

Implementation – Ensure the Solution has a High Usability Factor

  • Ensure the user/s of the solution can achieve specified goals with effectiveness, efficiency, and satisfaction.
  • Ensure the system logically supports user self-learning on how to use the system with effectiveness and efficiency.
  • Ensure the solution protects the user against making errors.
  • Ensure the user interface is pleasing and presents a satisfying interaction for the user.

Implementation – Ensure the Solution is Reliable

  • Ensure the solution performs appropriately under agreed conditions for extended periods of time without the need for intervention (despite potential attacks).
  • Ensure all steps are taken to reduce the occurrence of faults due to misunderstood requirements, design errors, and implementation errors.
  • Respond to outages and failures when and where needed.
  • Improve fault tolerance even when operational conditions are not optimal.
  • Ensure the solution is maintainable, and actively seek methods to reduce down-time.
  • Ensure the solution is durable so that as user volumes and requirements change the solution can evolve over the long term.
  • Ensure the solution simplifies support and maintenance support through traceability, and effective error messaging.

Implementation – Ensure the Solution has Effective Security

  • Ensure the solution is secure, and confidential by protecting all information and data (also data transmission).
  • Ensure persons or other solutions have the degree of access appropriate to their level of authorization and types.
  • Ensure the solution has high integrity where the solution prevents unauthorized access to, modification of computer programs, data, or settings.
  • Ensure the solution has a high degree of survivability despite third-Party interventions (attacks, human errors, hardware, or software faults).
  • Employ logs and records so that actions and events can be proven to have taken place and cannot be disputed/repudiated later.
  • Ensure wherever actions can be traced uniquely to the entity which performed it.

Implementation – Ensure the Solution is Maintainable

  • Ensure relevant documentation is provided to support teams to reduce development support burden.

Verify Deployed Solutions

  • Ensure the solution is delivered completely and with the additional assets which are required to make installation/deployment as seamless and easy as possible.

Respond to Outages & Failures

  • Provide proactive support to Peers, Testing, Dev Support and Operational teams so number of escalations to the development team is reduced, thereby maximizing development time.
  • Provide support to the Dev Support when required during operational events and create or assist with the creation of SOP’s.
  • Be available to handle emergency outages and failures for you or your teams’ solutions.
  • Perform trouble shooting and effectively resolve issues to increase solution stability and reduce intervention required over time.
  • Recommend and execute approved improvements to development methods and solutions.
  • Provide quick resolutions to app/system issues, driving stability, efficiency and effectiveness.
  • Maintain solutions which have completed development and are in the operations phase.
  • Develop and maintain technical support documentation.
  • Assess risk and impact of production issues/changes and take appropriate steps to mitigate risk.

Behavioural Outputs:

Adaptably Resilient

  • Adapts to change and is open to innovative ideas and willing to take on new responsibilities.
  • Able to manage pressure and can effectively adjust plans to meet changing needs/demands.
  • Changes his/her interpersonal style and approach based on the circumstances.
  • Adapts behaviour to maintain cooperative relationships with others.
  • Accepts changes to task, plans and procedures to align with strategic direction of the organization and appropriately adjusts behaviour and activities to changing conditions.
  • Maintains a positive attitude in the face of change.

Decision Making Quality

  • Makes confident, timely, fact-based decisions drawing on a broad range of resources through collaboration with others.
  • Ensures others understand the decision before moving forward.
  • Considers short- and long-term implications of the decision.
  • Able to logically defend and explain judgements and decisions.
  • Takes steps to accurately define the problem before seeking a solution.
  • Bases decisions and evaluations on a careful and systematic review of relevant facts and information.

Resourceful and Improving

  • Generates new ideas and challenges the status quo, takes risk, supports change, and encourages innovation.
  • Searches for opportunity to create new ideas and innovate or improve efficiencies wherever possible.
  • Solves problems through questioning the status quo.

Living our Spirit:

  • We firmly believe that teamwork makes the dream work.
  • We collaborate seamlessly within our live development team and support respective departments to collectively achieve our goals.
  • We approach each day as an adventure, eagerly tackling new challenges, adapting to changes, and constantly learning and growing.
  • We put our hands up to provide live support as and when required. We are dedicated to ensuring the continuous stability and efficiency of our solutions.
  • We actively respond to outages and failures, providing proactive support to peers, testing, and operational teams. We resolve issues quickly and make improvements to maximize solution stability.
  • We direct system testing and validation procedures, ensuring the highest quality in our software.
  • We pay strong attention to detail, uphold SEO principles, and strive for responsive and adaptive design.
  • We take ownership of our responsibilities, adhering to best practices and embracing a proactive approach to problem-solving.
  • We maintain excellent written and verbal communication skills, ensuring clear and open communication within our team and with other departments.
  • We foster an environment that encourages innovative thinking and creative solutions, continuously seeking new ways to improve our software and development methods.


The Company We Keep:

At BET Software, we don’t just recruit talent, we cultivate it. Our learning and development programmes, our various opportunities for growth, and our well-deserved incentives are what keep our All-Star Team the best amongst the rest.

Please note that only applicants who meet the stipulated minimum requirements will be considered. If you have not been contacted within 30 days, kindly consider your application to be unsuccessful.

Other vacancies in Software Development