Junior Software Development Engineer
BETSoftware
Durban
On-site
ZAR 300,000 - 400,000
Full time
13 days ago
Job summary
A software development company in Durban is seeking an experienced developer to design fit-for-purpose solutions and algorithms. The candidate should possess strong communication skills and attention to detail with at least one year of experience in a development environment. Responsibilities include ensuring the solution is reliable, maintainable, and user-friendly.
Qualifications
- Minimum 1 years’ experience within a development environment is advantageous.
- 1-year database experience is advantageous.
- 1-2 years server/client-side language is advantageous.
Responsibilities
- Design solutions using most appropriate approved architectural pattern.
- Ensure design meets best practices and is Test, DevOps, and Support friendly.
- Deliver a correct solution which provides the correct results with the needed precision.
Skills
Good written and verbal communication skills
Strong attention to detail
Problem-solving and critical thinking
Communication and collaboration
Job Description
- Good written and verbal communication skills.
- Strong attention to detail.
- Communication and collaboration
- Problem-solving and critical thinking
- Architecture
Responsibilities
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 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 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 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 maximising 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 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
- Engages in cross-functional collaboration and problem solving whilst encouraging a culture of inclusivity.
- Actively drives a culture of versatility and adaptability by supporting other Team Members not only within the department, but within BET Software as a whole.
- Shows up in an authentic manner and leverages off the team’s diversity to achieve deliverables.
- Views challenges as opportunities to expand on their knowledge base and takes a creative approach to overcoming the challenges.
Qualifications
- Minimum 1 years’ experience within a development environment is advantageous.
- 1-year database experience is advantageous
- 1 - 2 years server/ client-side language is advantageous
- Good written and verbal communication skills.
- Strong attention to detail.