Software Engineer (Ubuntu Linux, C/C++) (CPT Hybrid)
IT – Software Development ~ IT – Support
Cape Town – Western Cape
ENVIRONMENT:
JOIN a dynamic Industrial, Financial and Commercial Business Solutions company seeking your coding talents to be its next Software Engineer whose core role will be to design, develop, build, install, test, document, and maintain applications and / or utilities running on its Ubuntu Linux servers. The ideal candidate must possess a Degree/Diploma in Information Systems or Computer Science with at least 5 years’ work experience developing in C/C++ on Linux servers. You must have created and worked with 24/7 operational mission critical services & solid experience in the following: SDLC, SQL database design, querying and processing, REST/Micro-services, Bash commands and scripting, TCP/IP, UDP, iptables, routing tables, analysis and design of utilities and libraries to be developed and customizing open-source projects.
DUTIES:
- Collaborate with internal stakeholders for enhancements, requests, and progress updates.
- Be involved in the design, specification, coding, testing, maintenance, and documentation of applications and/or utilities and/or libraries.
- Take on existing utilities, libraries, and servers.
- Upgrade artifacts as part of server upgrades onto newer Ubuntu OS versions.
REQUIREMENTS:
Qualifications –
- A Degree or Diploma in Information Systems or Computer Science.
Experience/Skills –
- Minimum 5 years work experience developing C / C++ on Linux servers.
- Creating and working with 24/7 operational mission critical services.
- Good experience with each of the following:
- Analysis and design of utilities and libraries to be developed.
- Software Development Life Cycle.
- SQL database design, querying and processing.
- Application integrations using: REST / Web or Micro-services.
- Bash commands and scripting.
- Networking (TCP/IP, UDP, iptables, routing tables).
- Customizing open-source projects.
Additional skills and understanding:
- Wi-Fi hotspot workings.
- Radius integrations.
- Ipsets, pmacct.
- DHCP.
- DNS.
- Python scripting.
- Automation.
ATTRIBUTES:
- Meticulous with great attention to detail.
- Remain flexible, function under pressure, and maintain a positive attitude and work performance in a variety of circumstances.
- Ability to work as a collaborating team, but also independently.
- Take responsibility for staying up to date with the latest trends and developments.
- Be willing and keen to share information.
- Good communication skills.
- Have a natural tendency to be self-driven and highly self-motivated with a sense of pride in their work.
- Shows initiative.
- An ability to grasp “big picture requirements” and work with changing requirements.
- A strong sense of integrity.
- Able to learn and apply new development tools quickly and efficiently.
- Can accept constructive criticism.