Job Summary
We are seeking a well-versed Intermediate Software Developer who is adept at designing, coding, testing, and maintaining applications. Must possess a robust understanding of the software development life cycle (SDLC). Must have problem-solving abilities, collaborative teamwork, and continuous learning to stay updated with emerging technologies. What youâ€ll do: Developing front-end website architecture. Designing user interactions on web pages. Developing back-end website applications. Creating servers and databases for functionality. Ensuring cross-platform optimization for mobile phones. Ensuring responsiveness of applications. Seeing through a project from conception to finished product. Designing and developing APIs. Meeting both technical and consumer needs. Staying abreast of developments in web applications and programming languages. Designing, building, and maintaining complex web applications with a particular emphasis on the UI (interactions, styling, etc.) Working with single-page architecture, front-end application frameworks (ideally React) Interpreting mock-ups and translating them into polished and resolved UIs Optimizing client performance through efficient dependency management and data access patterns Modifying and extending REST API endpoints for data retrieval and persistence Your expertise: Assist with the design of the overall architecture Collaborate with the rest of the team A desire to write clean and maintainable code. Maintain existing code Attention to detail Experienced in back-end languages (.NET, Javascript) Proficient understanding of web markup, HTML5, CSS3 Experience with Microsoft Web stack (MVC, C#, razor, IIS, ASP.net, Web services, Web API) Experience with cloud message APIs Solid understanding of entity framework. Knowledge of code versioning tools (SVN and Git) Experience with Microsoft SQL, database development A good working knowledge of ASP.Net and WebAPI Exposure to an Agile Development Methodology would be beneficial Other desirable skills include: 5 years relevant work experience Ability to write quality unit tests He or she should have a complete understanding of automated processes for building testing, documenting, and deploying it at scale An awareness of security concerns is important, as each layer has its own vulnerabilities Knowledge of Algorithms and data structures is also an essential need for professional full-stack developers Qualifications required: B.Sc / B.Com Information Technology / Informatics / Computer Science 3-Year Diploma Information Technology Other information applicable to the opportunity: Permanent Position Location: Pretoria Work environment: Open Plan office. Hybrid working environment Travel: Travelling might be required  Why work for us? Want to work for an organization that solves complex real-world problems with innovative software solutions? At iOCO, we believe anything is possible with modern technology, software, and development expertise. We are continuously pushing the boundaries of innovative solutions across multiple industries using an array of technologies.  You will be part of a consultancy, working with some of the most knowledgeable minds in the industry on interesting solutions across different business domains.  Our culture of continuous learning will ensure that you will have all the opportunities, tools, and support to hone and grow your craft.  By joining IOCO you will have an open invitation to developer inspiring forums. A place where you will be able to connect and learn from and with your peers by sharing ideas, experiences, practices, and solutions. Â