Senior Software Engineer X3

Senior Software Engineer X3

Senior Software Engineer x 3
Cape Town
Fixed Term Contracts (1 year)
 
Introduction
Our client’s Software Engineering division has vacancies for 3 Senior Software Engineers to join the team reporting to the  Functional Manager: Software.  An amazing company to work for and a great opportunity.
 
Job description
The main purpose of these roles are as follows:
    • Prototyping and software development of the telescope operational software (all stages of the full software development life-cycle may be encountered).
    • Provide hands-on technical support in the system administration of the hardware platforms, deployment environments and processing, which may include site visits to the Karoo.
    • Collaborate with departmental stakeholders to support engineering, commissioning, operations and early science activities.
    • Assist in maturing of software development and quality assurance processes towards greater standardization and improved long term maintainability and robustness.
    • Facilitate coding standard compliance and code reviews, which include mentoring junior engineers.
    • Compile document sets
    • Provide project management and progress reporting input as required by the Functional Manager and for team communication.
    • Participate in development of project schedules and activities.
    • Participate in the development of budgets and cost/benefit analysis for compliance with project procurement policies.
    • Make technical decisions independently without direction from Technical lead.
    • Has deep understanding of version control to the point of being able to help out junior and software engineers.
    • Innovate independently towards improving the software.
 
Minimum requirements:
 
Minimum Education and Work Experience Required:
    • Experience in a software engineering environment, preferably in an engineering development project environment with a strong software focus.
    • Python or C/C++ programming language and experience in development, testing, development, commissioning, release and support of large scale projects in Python or C/C++.
    • Technical knowledge of development in Linux operating systems (experience in system administration of such will be beneficial).
    • Technical experience in architecture design and development of large software projects (experience with control and monitoring will be beneficial.
 
WITH either,
 
    • B.Tech/B.Sc (Comp Sci)        with 10+ years; OR
    • B.Eng/B.Sc Hons (Comp Sci)    with 9+ years; OR
    • M.Eng/M.Sc (Comp Sci)            with 7+ years; OR
    • PhD/D.Eng                                 with 5+ years;
 
Competencies Required:
 
Experience:
    • quality assurance processes and software development processes.
    • programming in the Python programming language.
    • development, testing, deployment, commissioning, release and support large scale projects.
    • developing applications targeted for the Linux operating system.
    • implementation of project management and system engineering principles.
    • test-driven development and integration testing techniques, methodologies and frameworks; and supporting systems
 
Knowledge:
    • Modern software collaboration tools such as Github, Containers, Google Drive, JIRA.
    • Python programming language.
 
Ability:
    • communicate effectively (written and verbal)
    • participate and thrive in a collaborative environment
    • both work independently and be a good team player
    • troubleshoot issues methodically.
 
Desirable additional educational, work experience, and personal qualities:
    • Understanding and experience in implementation of project management and system engineering principles.
    • Experience with test-driven development and integration testing techniques, methodologies and frameworks; and supporting systems like revision control and build systems.
    • Experience with quality assurance processes and software development processes and willingness to participate in improving software development processes and software quality procedures.
    • Willingness to play a leading role in mentoring juniors.
    • Ability both to work independently and be a good team player.
    • Ability to participate and thrive in a collaborative environment.
    • Self-motivated and an ability and willingness to self-train and up-skill independently.
    • Keen attention to detail.
    • Strong oral and written communication skills.
 
Should you be interested in applying, and you meet all the minimum requirements, then Dyanne invites you to apply.
 
Please note that if you have not heard from us after 2 weeks, then please consider your application as being unsuccessful.
 

No Comments

Sorry, the comment form is closed at this time.