Software Engineer - Sandton Verfied

Salary Negotiable Sandton, Gauteng Sandton, Gauteng more than 14 days ago 13-06-2019 9:30:51 AM
08-08-2019 9:30:51 AM
SOFTWARE ENGINEER JOB DESCRIPTION

FULL TIME

We are looking for a Software Engineer to join our growing team and build out the next generation of our platform. The ideal candidate must be a hands-on platform builder with significant experience in developing scalable data platforms. We’re looking for someone with experience in business intelligence, analytics, data science and data products. They must have strong, first-hand technical expertise in a variety of configuration management and big data technologies and the proven ability to fashion robust scalable solutions that can manage large data sets. They must be at ease working with little supervision. This person should embody a passion for continuous improvement and test-driven development and be able to design, develop and install complex software solutions.

The person’s ultimately role will be to build high-quality, innovative and fully performing software that complies with coding standards and technical design.

The person will also be required to carry out the following overall roles:

1. Improve existing operations by conducting systems analysis; recommending changes in policies and procedures
2. Obtain and license software by obtaining required information from vendors; recommending purchases; testing and approving products
3. Update job knowledge by studying state-of-the-art development tools, programming techniques, and computing equipment; participating in educational opportunities; reading professional publications; maintaining personal networks; participating in professional associations
4. Protect operations by keeping information confidential


GRAPHIC DESIGNER DUTIES AND RESPONSIBILITIES

1. Executing full lifecycle software development
2. Programming well-designed, testable, efficient code
3. UX/UI Designer
4. Producing specifications and determine operational feasibility
5. Design and develop a processing platform using various configuration management technologies
6. Provide ongoing maintenance, support and enhancements in existing systems and platforms.
7. Collaborate cross-functionally with data scientists, business users, marketing managers and other engineers to achieve elegant solutions
8. Provide recommendations for continuous improvement
9. Work alongside other engineers on the team to elevate technology and consistently apply best practices
10. Develop software verification plans and quality assurance procedures
11. Develop documentation, flowcharts, layouts, diagrams, charts, code comments and clear code.
12. Document and maintain software functionality
13. Tailor and deploy software tools, processes and metrics
14. Comply with project plans and industry standards
15. Determine operational feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions
16. Prepare and install solutions by determining and designing system specifications, standards, and programming
17. Improve operation by conducting systems analysis; recommending changes in policies and procedures.
18. Design, deploy and support best in class software development processes and tools
19. Develop coding and design tasks to ensure software meets specified performance and reliability requirements
20. Conduct systems programming and systems support activities


KEY COMPETENCIES

Well Rounded Developer with 5-8 years’ solid development experience

Required Technical Skills:

1. Good understanding of the Java/Kotlin programming language/syntax
2. Good understanding of HTML/CSS and basic JavaScript
3. Good understanding of Javascript ES5 and ES6/ES7.
4. Mobile app development (React-native and Native code).
5. Front-Development (React).
6. Experience with SQL and Mongo database concepts and design
7. Exposure to Java servlet containers (e.g. Tomcat, GlassFish, Jetty)
8. Experience with Java/Javascript IDEs (e.g. IntelliJ, Netbeans, Webstorm)
9. Practical database experience (e.g.Oracle, MongoDB)
10. Good English writing capabilities and communication skills

Some Recommended Technical Skills:

1. Exposure/understanding of version control and the software development lifecycle in a team environment
2. Exposure to Linux (e.g. CentOS, UBuntu, Debian, Kali Linux)
3. Good understanding of Internet and LAN/WAN technologies
4. Exposure to accounting and business concepts
5. Back-end and Front-end Development
6. Knowledgeable about cloud native applications
7. Exposure to different software architectures, e.g. monolith vs micro services

QUALIFICATIONS

IT Degree preferable; Diploma would be considered.
Java and Javascript Certification preferred.
Full Stack

OTHER COMPETENCIES:

Team Player
Diligent and proactive
Good Communication: effective, regular, clear
Self-starter
Troubleshooting skills