- Design, create and extend, high quality, testable software that meets specifications, follows coding standards and is easy to maintain
- Participate in software design discussions to define solutions for complex business requirements
- Test and peer review code for technical accuracy, standards, and functional compliance to the design Work in an agile development environment
- Assist with creating project plans, breaking down requirements and estimating tasks
- Identify and proposes areas of improvement throughout the software development process
Core competencies:
- Expert level C++
- Object Oriented Analysis and Design
- Multi-threading and concurrency
- SQL
- Agile
- Control Versioning Software (git)
- Test driven development techniques (TDD)
- Excellent communication (verbal and written) skills
Advantageous Experience:
- Perl, PHP
- XML, JSON
- Client / Server architecture
- Service-oriented architecture
- Relational database design
- Web Servers (e.g. IIS, Apache, NGINX)
- Experience developing Operating System agnostic software (FreeBSD, Linux, Windows)
- Proficient knowledge to work throughout the stack on middleware, front end and database technologies
Personality / Experience:
- Enthusiastic and self-motivated
- Ability to work independently
- Able to communicate effectively with remote global team members
Desired Skills:
- Systematic and focused on delivery
- Senior level with 5+ years relevant experience
Desired Work Experience:
- 2 to 5 years
Desired Qualification Level:
- Degree
About The Employer:
Global communications management (software) company in Johannesburg is looking for a C++ Software Engineer to join their team
The core responsibility of a C++ Software Engineer is to design, build and extend high quality applications for the clients CCM Platform. You’ll work closely within a team of remote developers to bring products to market, leveraging your experience and strong technical knowledge