Jobs Career Advice Post Job
X

Send this job to a friend

X

Did you notice an error or suspect this job is scam? Tell us.

  • Posted: Nov 13, 2024
    Deadline: Not specified
    • @gmail.com
    • @yahoo.com
    • @outlook.com
  • BETSoftware is one of the most diverse betting software providers in Sub-Saharan Africa, with a rapidly growing international footprint. Our multiskilled Team is responsible for providing advanced software solutions, while supporting incredibly high transactional volumes in a fast-paced industry, making BETSoftware a lively and engaging place to be. Our prog...

     

    Intermediate Software Development Engineer (DBN)

    You Bring:

    • At least 3-5 years’ experience within a development environment (advantageous).
    • 2 - 5 years database experience.
    • 3 -5 years server/client- side languages (advantageous).
    • Good written and verbal communication skills.
    • Strong attention to detail.

    What You’ll Do:
    Technical Outputs:
    Perform Planning

    • Identify and establish objectives for self and team.
    • Work on objectives or goals within timeline.
    • Consider all reasonable factors, impediments and obstacles.
    • Identify potential alternative strategies and refactor approach for maximum benefit within the shortest possible time.

    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 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.
    • Ensure the solution is robust and remains continually available.
    • Respond to outages and failures when and where needed.
    • Improve fault tolerance even when operational conditions are not optimal.
    • 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.
    • Ensure over time, the solution becomes more mature where the interval between the interventions to remain operational become less frequent.
    • Ensure in the event of a failure reduce effective downtime is to the minimum possible.

    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 authorisation and types.
    • Ensure the solution has high integrity where the solution prevents unauthorised 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 possible actions can be traced uniquely to the entity which performed it.
    • Ensure wherever possible the identify of an entity can be proved to be the correct one.

    Implementation - Ensure the Solution is Maintainable

    • Ensure the solution and its relevant code base supports ease of modification for future maintainers.
    • Ensure the use of appropriate standards and methods.
    • Ensure where possible (without affecting performance/security) the solution caters for maintenance by support teams rather than developers.
    • Ensure modularity where the solution consists of discrete components so that a change in one component has minimal impact on other components.
    • Ensure relevant documentation is provided to support teams to reduce development support burden.
    • Apply a strategy of reusability so an asset can be used in more than one solution or in building other assets.
    • Where possible provide a mechanism for the solution to analyse its own faults and provide reports prior to a critical failure.
    • Develop the solution in a manner which supports modification for future developers thereby reducing the numbers of defects or negatively affecting system quality.

    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.
    • Ensure the adaptable solution delivered is appropriate for different or evolving, software or other operational usage environments.
    • 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 your 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.

    Direct 3rd Party Development Partners

    • When required, supply appropriate information, domain knowledge and access to partners.
    • Provide timely, relevant and constructive feedback to assist the partner to achieve success.
    • Take corrective action when deviation from the plan is observed.
    • Take all appropriate steps to ensure organisational success.

    go to method of application »

    Senior Project Manager (DBN)

    You Bring:

    • Bachelor’s degree/National Diploma.
    • Relevant Project Management Certifications PMP, Prince II, Scrum Master.
    • At least 5 years of project management experience, specifically software development projects.
    • At least 5years’ of experience with full product lifecycle with an understanding of development lifecycle and various technology methodologies that support that lifecycle.
    • Advanced level of proficiency with MS Project, Excel, Visio, PowerPoint and SharePoint with experience presenting to stakeholders and/or Senior Leadership.
    • Excellent experience in Software Development Lifecycle Methodologies such as Agile, SCRUM, Waterfall, Kanban, etc.
    • Strong leadership, diplomatic and motivational skills including the ability to lead up, across and down multiple business and technology organisations.
    • Tools: MS Project, Excel, Word and PowerPoint; CA Clarity PPM, MS TFS/Azure DevOps, Dynatrace.
    • Strong experience presenting to executive sponsors and demonstrated communication skills, both written and verbal with technical and non-technical team members, at all levels of management.
    • High levels of influence.

    What You’ll Do:

    • Defines the Statement of Work and specifications for the requested project work.
    • Owns the full project lifecycle which entails successful project delivery including full implementation from initiation to deployment for one large and complex project or several minor initiatives simultaneously.
    • Manages all aspects of multiple related projects to ensure the overall program is aligned to and directly supports the achievement of strategic objectives.
    • Participates in establishing practices, templates, tools and partnerships to expand and mature these capabilities for the organisation.
    • Prepares estimates and detailed project plans for all phases of the project.
    • Works in collaboration with Team Leads to procure adequate resources to achieve project objectives in planned timeframes.
    • Demonstrates a functional acumen to support how solutions will address client goals while maintaining alignment with industry best practices.
    • Understands interdependencies between technology, operations and business needs.
    • Manages project scope and changes with all stakeholders and teams on the ground effectively.
    • Acts as an internal quality control check for the project.
    • Manages a portfolio of complex initiatives that span one or multiple lines of business.
    • Reports on project success criteria results, metrics, test and deployment management activities.
    • Determines the frequency and content of status reports from the project and program team, analyse results and troubleshoot problem areas.
    • Provides status reporting regarding project milestones, deliverables, dependencies, risks and issues, communicating across leadership.
    • Defines success criteria and disseminates them to the involved parties throughout the project and program life cycle.
    • Identifies and develops trusted adviser relationships with project stakeholders and sponsors.
    • Delivers appropriate, consistent and effective executive level communication throughout the project life cycle.
    • Develops and maintains a good understanding of BETs stakeholder landscape, interactions and linkages across the organisation and its potential future movement.
    • Builds and maintain positive relationships with internal peers and other team members, in ways that help to deliver the company strategy as a whole.
    • Develops a position as a leader among one or more external networks and use this to maximise BET Software’s influence and credibility.

    Team management:

    • Leads direct and indirect reports for the successful management of the allocated product (i.e. seconded team members).
    • Ensures that the cross functional team is aligned with the company’s strategy and working towards achieving the strategy.
    • Ensures the team is appropriately resourced and members are equipped with the requisite skill required for both current and future projects.
    • Support and/or develop a training and career development plan for each team member.
    • Collaboratively works with team members to set performance goals and measures.
    • Conducts regular performance discussions with the team to facilitate a culture of growth.
    • Facilitates mentoring and coaching as required.
    • Oversees all aspects of the team by facilitating and resolving issues through effective problem solving and communication skills.
    • Maintain a current and future skill matrix for the team.
    • Create a culture for teams that are aligned to the platforms and BET values.

    go to method of application »

    Senior Software Developer (DBN)

    You Bring:

    • Bachelor’s degree in Computer Science, Software Engineering, or similar field (advantageous).
    • At least 5 years’ experience within a development environment.
    • The successful candidate may specialise in (C#,.NET, SQL, React, React Native, JavaScript, Java (back end), Elixir, Erlang).
    • Knowledge of design principles and fundamentals of architecture.
    • Demonstrated leadership/mentoring skills.
    • Detailed knowledge of the SDLC and management of software projects.
    • Good written and verbal communication skills.
    • Strong attention to detail.

    What You’ll Do:

    Designing Solutions and Planning:

    • Designing fit-for-purpose solutions involves active participation in design and planning meetings, selecting appropriate architectural patterns, and establishing objectives for oneself and the team. This includes considering all reasonable factors, identifying potential alternative strategies, and formulating supporting plans while ensuring adherence to best practices.

    Implementation of Efficient Solutions:

    • The implementation phase focuses on delivering complete, correct, and efficient solutions that meet specified tasks and objectives. It involves ensuring checked-in code meets standards, performance requirements, and is compatible with other systems. Additionally, solutions must be user-friendly, reliable, and perform efficiently without negatively impacting other solutions.

    Ensuring Usability and Reliability:

    • During implementation, emphasis is placed on ensuring solutions are user-friendly and reliable. This includes designing solutions that allow users to achieve goals effectively and efficiently while providing a pleasing and satisfying interaction experience. Solutions must also perform appropriately under various conditions, respond to outages and failures promptly, and ensure data recoverability.

    Security and Maintainability:

    • Implementing secure and maintainable solutions involves protecting information and data, ensuring appropriate access levels, and maintaining data integrity. Solutions must be robust, durable, and capable of evolving over time to meet changing requirements. Moreover, they should support ease of modification, adhere to standards and methods, and promote reusability to reduce maintenance burdens.

    Testing, Verification, and Deployment:

    • Efforts are made to ensure solutions are test-friendly, complete, and adaptable for different operational environments. Additionally, proactive support is provided to peers, testing, development, and operational teams to minimise escalations and downtime. Troubleshooting and resolving issues effectively contribute to solution stability and efficiency.

    Coaching and Mentoring:

    • Lastly, coaching and mentoring activities involve providing guidance, training, and problem-solving assistance to team members. This includes contributing to the growth of junior and intermediate team members, designing and delivering end-user training, and facilitating knowledge transfer within the team. These efforts aim to foster a culture of learning and continuous improvement within the organisation.

    go to method of application »

    Senior Software Developer (CPT)

    You Bring:

    • Bachelor’s degree in Computer Science, Software Engineering, or similar field (advantageous).
    • At least 5 years’ experience within a development environment.
    • Knowledge of design principles and fundamentals of architecture.
    • Demonstrated leadership/mentoring skills.
    • Detailed knowledge of the SDLC and management of software projects.
    • Good written and verbal communication skills.
    • Strong attention to detail.

    What You’ll Do:

    Design Fit for Purpose Solutions & Algorithms & planning

    • Actively contribute to design and planning meetings, discussions and documentation.
    • Design solutions using most appropriate approved architectural pattern.
    • Ensure design patterns used are increasing the organizational levels of high-volume transactional performance, resilience, automation and innovation.
    • Ensure design meets best practices and are Test, DevOps and support friendly.
    • Identify and establish objectives for self and team.
    • Set objectives/goals based on the team’s chosen software development methodology to successfully complete projects.
    • Consider all reasonable factors, impediments and obstacles.
    • Identify potential alternative strategies and refactor approach for maximum benefit within the shortest possible time.
    • Formulate supporting plans and communicate with others in terms of dependencies and impact.
    • Publish plan to, peers and stakeholders through agreed methods.

    Implementation of a solution that is complete, efficient and compatible

    • Deliver a complete 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.
    • Deliver an appropriate solution which facilitates the accomplishments of specified tasks and objectives comprehensively yet excluding unnecessary steps.
    • Ensure checked-in code is reviewed to ensure standards are met and the code base is sound.
    • Deliver a solution in which throughput rates & response and processing times meet stated requirements.
    • Deliver a solution in which effective/efficient resource utilization of system resources occurs during operation.
    • Deliver a solution which ensures the maximum operational capacity requirement is achieved or exceeded.
    • Deliver a solution which performs efficiently and can co-exist with other solutions and does not have a detrimental impact on other solutions.

    Implementation – Advises on the Solution and/or actions allocated tasks to ensure it has a High Usability Factor

    • Ensure the user/s of the solution can achieve specified goals with effectiveness, efficiency and satisfaction.
    • Ensure the user of the system can comfortably recognize the systems flow, functions and capabilities of the system.
    • 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.
    • Actions the proposed solution thus ensuring that it is accessible and can be used by people with the widest range of characteristics, capabilities, cultures and languages where appropriate.

    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.
    • Ensure the solution is robust and remains continually available.
    • Respond to outages and failures when and where needed.
    • Improve fault tolerance even when operational conditions are not optimal.
    • Ensure complete data recoverability so that data may be recovered, and the desired state of the solution can be re-established (despite potential attacks).
    • Ensure the solution is maintainable, and actively seeks 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.
    • Ensure over time, the solution becomes more mature where the interval between the interventions to remain operational become less frequent.
    • Ensure in the event of a failure reduce effective downtime is to the minimum possible.

    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 3rd-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 possible actions can be traced uniquely to the entity which performed it.
    • Ensure the solution and its relevant code base supports ease of modification for future maintainers.
    • Ensure the use of appropriate standards and methods.
    • Ensure where possible (without affecting performance/security) the solution caters for maintenance by support teams rather than developers.
    • Ensure modularity where the solution consists of discrete components so that a change in one component has minimal impact on other components.
    • Ensure relevant documentation is provided to support teams to reduce development support burden.
    • Apply a strategy of reusability so an asset can be used in more than one solution or in building other assets.
    • Where possible provide a mechanism for the solution to analyze its own faults and provide reports prior to a critical failure.
    • Develop the solution in a manner which supports modification for future developers thereby reducing the numbers of defects or negatively affecting system quality.

    Testing, Verification and Deploying

    • Ensure the solution is test friendly by creating effective mechanisms for test data, automated testing hooks and simulations.
    • Ensure the solution is delivered completely and with the additional assets which are required to make installation/deployment as seamless and easy as possible.
    • Ensure the adaptable solution delivered is appropriate for different or evolving hardware, software or other operational usage environments.

    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 technical support documentation and where possible/necessary, maintain the documentation.
    • Assess risk and impact of production issues/changes and take appropriate steps to mitigate risk.

    Coaching/Mentoring

    • Provides guidance, training, and problem-solving assistance to other Team Members.
    • Mentors and contributes to the growth of junior and intermediate Team Members.
    • Designs and delivers end-user training and training materials.

    Method of Application

    Build your CV for free. Download in different templates.

  • Get new ICT / Computer jobs like this on Telegram.Subscribe on Telegram
  • Send your application

    Back To Home
  • Popular Jobs

Career Advice

View All Career Advice
 

Subscribe to Job Alert

 

Join our happy subscribers

 
 
Send your application through

GmailGmail YahoomailYahoomail