Senior Software Engineer

Cape Town, Western Cape, South Africa

Job Description


Responsibilities

  • Deliver code according to a product backlog
  • Agile software development
  • Technical leadership of a small development team
  • Provide input on UX and UI designs to optimise development efforts
  • Give architectural advice where required
  • Actively contribute to the entire team of product managers, UX practitioners, software developers and QA analysts and engineers
  • Continuous self-development and expansion of skills
  • If you're an intermediate: assist senior software developer to mentor junior team members
  • If you're a senior: mentor junior team members
  • Assist with software and product support
  • Communicate technical needs and risks effectively outside of the team
  • Be familiar with devops and infrastructure deployment
  • Write effective documentation for architecture and infrastructure
Skills

Firstly, you need the skills to take on the responsibilities specified above. You should also have some depth of experience in the technologies we generally use, which includes the following:
  • AngularJS. Other web frameworks (ReactJS etc) may also be applicable
  • Flutter and Dart for mobile development. Android and iOS native development are also appropriate
  • API integration through HTTP. REST and REST-like interfaces.
  • GraphQL integration
  • Relational databases and SQL
  • Other databases (time series, graph, document, key-value etc)
  • Use cloud based infrastructure (AWS and Google). This includes compute and data storage elements.
  • Automated deployment infrastructure (Azure DevOps, CodeDeploy etc.)
And these equally important skills
  • Communication skills that allow you to collaborate and explain your process, approach and motivation to various stakeholders, including technical and non-technical people.
  • Able to work well in a team as well as individually.
  • Excited about learning, pushing technical limits and finding new solutions
  • Excellent analytical and problem-solving skills.
  • A propensity to fail fast and learn fast and share both failure and learning with others.
  • Prioritising learning over being right. Understanding others rather than becoming defensive.
  • Understanding the value of the client as part of the team rather than us & them.
Qualifications

Relevant B.Sc. or B.Eng. university degree. Good academic performance, exceptional in software development/programming courses AND Minimum 6 years of relevant software development experience

Nice to have

If you tick all the required boxes, the following things will give you an edge:
  • If you've started your own business before (it does not matter whether it worked out or not)
  • If you've built and released something of your own
  • Active contributions to open source projects
  • A preference for a variety of work and horizontal training over deep specialist skills.
  • Aspirations to mentor and coach other developers

Boardroom Appointments

Beware of fraud agents! do not pay money to get a job

MNCJobs.co.za will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Job Detail

  • Job Id
    JD1276498
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    Not mentioned
  • Employment Status
    Permanent
  • Job Location
    Cape Town, Western Cape, South Africa
  • Education
    Not mentioned