Bachelor's degree in Computer Science, Software Engineering, or a related field.
Minimum of 5 years work experience in a similar environment.
Proven experience in a Senior role with a track record of successful projects.
Strong technical skills in C#,Maui/Xamarin, SQLite, MSSQL Server, PostgreSQL with a good understanding of Blazor, JavaScript and Flutter.
Experience with code review processes and quality assurance practices to ensure software quality and maintainable codebase.
Solid understanding of software development methodologies, such as Agile or Scrum, and experience with project management tools.
Familiarity with cloud platforms (such as Azure, or Google Cloud) is a plus.
Previous leadership or team management experience, demonstrating the ability to lead and motivate a team or individuals towards successful project delivery.
Leadership qualities, including the ability to inspire and motivate team members, foster a positive work culture, and drive continuous improvement.
Excellent communication and interpersonal skills, with the ability to collaborate effectively with cross-functional teams and stakeholders.
Strong problem-solving and decision-making abilities, with a focus on finding practical solutions to complex technical challenges.
Ability to adapt to a fast-paced, dynamic work environment and manage multiple priorities effectively.
Key Competencies:
Self-motivated: Have the ability to work in a dynamic environment.
Leadership: Possess strong leadership abilities and be capable of guiding and mentoring junior developers. Should be able to provide clear direction, and inspire and motivate the team to achieve project goals.
Learning mindset: Have a passion for continuous learning and professional growth. Keeping up-to-date with industry trends, new technologies, and best practices by attending conferences, participating in training programs, and seeking opportunities to enhance skills and knowledge.
Adaptability: The ability to adapt to changing project requirements, technologies, and team dynamics is important.
Problem-solving: Should have a logical and analytical approach to problem-solving. Being able to break down complex issues, identify root causes.
Attention to detail: Have a keen eye for detail. Paying attention to small details while writing code, reviewing code, and performing testing ensuring the quality and reliability of the software solutions while following coding standards, and conducting thorough code reviews.
Team player: Contribute to the success of the team as a whole.
Time management: Should possess good time management skills to meet deadlines and deliver projects on time. Prioritizing tasks, managing workload efficiently, and being proactive in seeking assistance when needed.
Communication skills: Should be able to articulate their ideas, ask questions when needed, and seek clarification to ensure a shared understanding among team members.
Initiative: Be proactive in seeking opportunities to improve code quality, efficiency, and overall development processes. Be willing to go the extra mile to deliver exceptional results and take responsibility for the success of projects.
Professionalism: Demonstrating professionalism in all aspects of work, including punctuality, respecting deadlines, maintaining confidentiality, and being accountable for one's actions.
Positive attitude: A positive and optimistic attitude can greatly contribute to a healthy work environment. It promotes teamwork, encourages creativity, and helps in overcoming challenges with resilience.
Functional Skills:
Experience with the use of the relevant software development environments.
Technically proficient in the following:
Maui / Xamarin
C#
SQL
Any of the following would be beneficial:
Blazor
Javascript
jQuery
CSS
AJAX
JSON
Figma
Docker
Flutter
Main Responsibilities:
Lead the design, development, and implementation of software projects, ensuring adherence to best practices and coding standards.
Collaborate with the team to analyse, design, and implement software solutions that meet business requirements.
Write clean, efficient, and well-documented code following coding standards and best practices that will perform consistently in specified operating environments within agreed timelines/budgets.
Participate in code reviews and provide constructive feedback to ensure a high-quality codebase, maintainability, and scalability.
Mentor and guide junior developers, assisting them in their professional growth and promoting best practices
Assist in troubleshooting and debugging software issues, identifying and resolving defects and performance bottlenecks.
Contribute to the development of software documentation, including technical specifications, user guides, and test plans.
Stay up to date with emerging technologies and industry trends to continuously improve your skills and knowledge.
Perform unit testing, support integration and system testing activities.
Collaborate with cross-functional teams, including firmware engineers, designers, and product managers, to deliver high-quality software products.
Actively participate in stand-ups, sprint planning, and retrospectives as well as team meetings, discussions, and brainstorming sessions to contribute ideas and solutions.
Participate in architectural discussions and contribute to the continuous improvement of our software architecture.
Professionally document all work in relevant technical environment, including advanced algorithms and design calculations, plans & estimates as well as the design performance characteristics and a summarized project cost breakdown.
Develop procedures for testing modules/components/products and evaluate, modify/enhance and re-test products.
Work in a professional manner consistent with the companys commitment to excellence, and R&Ds applicable development methodologies and/or standard operating procedures.
Standardise all designs as far as possible, using standard components; particular consideration must be given to inventory management. Always use appropriate components to ensure product excellence (exceptional reliability, high levels of functionality, excellent value, ease of manufacture and maintainability, etc.).
Solve all but the most complex problems in core discipline. Relies on assistance from senior personnel only in the most challenging situations.
Designs complex modules / components / products that are reliable, cost effective and that will perform consistently in specified operating environments within agreed timelines and budgets.
Responsible for projects requiring complex judgement using high level engineering principles and techniques.
ExecutivePlacements.com
Beware of fraud agents! do not pay money to get a job
MNCJobs.co.za will not be responsible for any payment made to a third-party. All Terms of Use are applicable.