HireFT
Browse JobsHow it worksPricingAboutSuccess Stories
    Back to jobs
    BE

    BET Software

    Software

    Intermediate Software Development Engineer - Live

    Durban, South AfricaOn-SiteFull-time3–5 yrs experiencePosted 2w ago
    View all jobs

    Job description

    • Good written and verbal communication skills.
    • Strong attention to detail.
    • Experience with responsive and adaptive design.
    • Understanding of SEO principles.
    • Good problem-solving skills.
    • Excellent verbal communication skills.
    • Good interpersonal skills.

    Responsibilities

    Job Responsibilities:

    Technical Outputs:

    Perform Planning
    • Identify and establish objectives for self and team.
    • Work on objectives or goals within the 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 that covers all the agreed-specified tasks and user objectives.
    • Deliver a correct solution that 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 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 seek methods to reduce downtime.
    • 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 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, or 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 that performed them.
    • Ensure wherever possible the identity 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 support ease of modification for future maintainers.
    • Ensure the use of appropriate standards and methods.
    • Ensure where possible (without affecting performance/security) the solution caters to 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 the support team to reduce the 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 faults and provide reports before a
    • critical failure.
    • Develop the solution in a manner that supports modification for future developers thereby reducing the number 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.
    Respond to Outages & Failures
    • Provide proactive support to Peers, Testing, Dev Support, and Operational teams so the 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 your or your teams’ solutions.
    • Perform troubleshooting 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 that 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 organizational success.

    Qualifications

    • Degree in computer science or related field.
    • Understanding of key design principles.
    • Proficiency in HTML, CSS, JavaScript, and jQuery.
    • Understanding of server-side CSS.
    • At least 3-5 years’ experience within a development environment
    • 2-5 years SQL/ database Experience
    • Preferably Experience in document stores such as Couchbase would be advantageous
    • Preferably Experience in Message Brokers such as RabbitMQ / Kafka would be advantageous
    • 2-5 years C# experience.
    • 2-5 years .net core experience.
    • 2-5 years of restful api experience.

    Job details are sourced from the employer's original posting.

    Open job posting
    BE

    About the company

    BET Software

    BET Software is a company that provides software solutions.

    View all BET Software jobs
    Industry
    Software
    Open roles
    39

    Interested in this role?

    Apply with HireFT

    Free to start — no card required.

    Your fit

    How well do you match?

    Sign in to see how your résumé lines up with this role.