We have an exciting opportunity available for two Junior Software Engineers to join an IT company in Cape Town. Junior Software Engineers are responsible for developing and maintaining the Enterprise Platform software.
Their tasks fall into three main areas, described in the following sections.Software engineeringJunior Software Engineers are primarily required to perform technical coding in Java, .
NET and SQL. They are expected to fulfil the following requirements : Produce quality codeStandards must be applied, for example regarding spacing and camel case.
Code must be readable by other developers.Code must be 'DRY' must not repeat itself.Code must be 'SOLID' single responsibility, open-closed principle, Liskov substitution, interface segregation, dependency inversion.
Code must be optimised and stable.Follow the SDLCThe Junior Software Engineer must use Gitlab correctly, following the processes for creating merge requests, back-porting and forward-porting.
The Junior Software Engineer is expected to keep their Redmine TTS queue up to date.Deliver within deadlines and without comebacksThe Junior Software Engineer is expected to keep to their commitments according to scheduling.
The Junior Software Engineer is expected to deliver code to the validators without any bugs. (Delivering on time doesn't count if the code breaks or is of poor quality.
Product knowledgeJunior Software Engineers are expected to actively acquire and maintain their knowledge of the products and the industry in which they are used.
Using the TEPProduct knowledge includes understanding and using the components that the product is built from.The Junior Software Engineer needs to know how to use the Configuration Manager to create and deploy installations.
The Junior Software Engineer needs to know how to use the Management Console.The Junior Software Engineer needs to be able to interpret log files correctly.
Financial technologyProduct knowledge includes understanding how the TEP is used by our clients. This assists the Junior Software Engineer in reasoning whether an engineering solution will solve a client requirement.
TeamworkJunior Software Engineers are expected to work proactively within the Engineering team, particularly in the following ways : Communication : Listening to colleagues, and keeping everyone involved in a topic updated, using the correct platform (email, TTS, Kanban, etc.
Resolving issues : Junior Software Engineers need to work with the Product Development, Support and Project teams. They are expected to help with investigations when issues arise, including production issues, and they are expected to create a healthy, positive atmosphere of co-operation between departments and teams.