Enable job alerts via email!

Intermediate Software Developer

Agile Bridge

Pretoria

On-site

ZAR 350,000 - 600,000

Full time

4 days ago
Be an early applicant

Generate a tailored resume in minutes

Land an interview and earn more. Learn more

Start fresh or import an existing resume

Job summary

Agile Bridge seeks an Intermediate Software Engineer to design and develop software solutions independently and collaboratively within a team. This role demands a deep understanding of software development basics, proficiency in programming languages like C# and Java, and the ability to improve existing systems. The ideal candidate will also participate in code reviews, ensure high-quality deliverables, and mentor junior developers, contributing to a dynamic Agile environment.

Benefits

Training and Development Opportunities
Flexible working conditions

Qualifications

  • 3-5 years of professional software development experience.
  • Strong understanding of software development concepts and practices.
  • Capable of interpreting user requirements and documenting them.

Responsibilities

  • Develop and maintain high-quality software solutions.
  • Conduct peer code reviews and ensure adherence to coding standards.
  • Collaborate effectively with team members and mentor junior developers.

Skills

Problem-solving skills
Team collaboration
Innovative thinking
Proficiency in programming languages

Education

Tertiary Qualification
Microsoft Certification

Tools

Git
Visual Studio
.NET Framework
SQL Server

Job description

Job purpose:

As an Intermediate Software Engineer, you will work with a degree of independence, focusing on developing software within a team and on specific sub-sections of a system. You will be responsible for designing solutions and modules for existing systems. With a solid grasp of software development fundamentals, coding principles, and stakeholder engagement, you possess strong troubleshooting skills, understanding system interdependencies and knowing when and whom to seek assistance from. At this stage in your career, you should also be capable of architecting basic components of a system.

Key Accountabilities:

Development and Maintenance

  • Deliver a solution that covers all the agreed-specified tasks and user objectives.
  • Ensure checked-in code is reviewed to ensure standards are met.
  • Successfully developed, delivery maintain high-quality software (requirements, design, code, documentation, etc.)
  • Maintain accurate timesheets for all work performed.
  • Maintain code stored in multiple source control systems.
  • Ensure the solution and its relevant code base support ease of modification for future maintainers.
  • Ensure the adaptable solution delivered is appropriate for different or evolving, software or other operational usage environments.
  • Continuously strive to make improvements to the existing products and/or systems and services.
  • Ensure all tasks are completed to the required quality standards.
  • Analyze the performance of programs and take action to correct deficiencies based on consultation with users and approval of supervisor.
  • Conduct peer code reviews.
  • Maintain confidentiality with regards to the information being processed, stored, or accessed.

Quality Assurance

  • Contribute to quality activities, incl. peer reviews of estimates, designs and code
  • Resolve defects/bugs during QA testing, pre-production, production, and post-release patches
  • Conduct peer code reviews.
  • Conduct functional testing.
  • Incorporate automated testing, performance testing, and iterative development using appropriate tools and techniques.
  • Provide quick resolutions to app/system issues, driving stability, efficiency, and effectiveness.
  • Assess risk and impact of production issues/changes and take appropriate steps to mitigate risk.

Team Collaborations

  • Be an active and enthusiastic team player. Partner effectively with all team members to deliver against commitments.
  • Commitment to team success and positive team dynamics.
  • Offer assistance and mentorship to junior developers.

Training and Development

  • Update job knowledge by studying state-of-the-art development tools & techniques.
  • Attend FFT, Hackathons and Conferences.
  • Direct 3rd Party Development Partners by supplying appropriate information, domain knowledge, and access, and providing timely, relevant, and constructive feedback.

Skills, know-how and experience:

  • Demonstrates a strong understanding of fundamental software development concepts, practices, and procedures.
  • Has a passion for hands-on technical work.
  • Exhibits innovative and creative thinking.
  • Maintains a customer-focused approach.
  • Capable of interpreting and documenting user requirements, translating them into technical specifications and code.
  • Possesses high numerical reasoning, logical ability, and excellent problem-solving skills.
  • Proficient in one or more relevant programming languages, frameworks, and databases.
  • Willing to adapt to significant changes in technology or environment.
  • Holds broad operational knowledge in modern IT domains such as Cloud, Social, Mobility, IoT, and Big Data.
  • Familiar with architecture best practices and patterns, including Microservices, CQRS, Event Sourcing, and Domain-Driven Design.
  • Has proven experience using a Test-Driven Development (TDD) approach.

Essential:

  • 3-5 years of professional or other practical experience

Experience in the following technologies:

  • Backend: C#, Java,
  • Frontend: HTML, Javascript, Angular and React
  • Framework: .NET Framework, .NET Core, .NET 6 +
  • Database: SQL Server, MySQL or Oracle
  • Web services (RESTful or WCF)
  • Entity Framework and Dapper
  • Unit and Integrations Testing
  • Tools: Git, Visual Studio 2019 or later

Beneficial

  • Proven experience with Agile Development, SCRUM, and/or Extreme Programming methodologies
  • NoSQL databases (CosmosDB, MongoDB)
  • Experience in working with Agile Teams and successfully delivering Agile-based software projects
  • Experience working with Git, Azure DevOps, JIRA, Jenkins, Automated Build Servers,
  • Microsoft certifications– AZ900, AZ204 AI900, AZ104

Technical / professional qualifications:

  • Microsoft Certification
  • Tertiary Qualification

Key performance indicators:

  • Complete assigned development tasks to agreed level of quality and by the required deadline.
  • Design, develop, deliver and maintain application/service solutions.
  • Ensure adherence to best practice and processes. Focus on sound development concepts and patterns such as object/service orientated architecture, refactoring and separation of concerns.
  • Provide accurate, detailed and timely estimates and track own activities against plan
  • Comply with project plans and industry standards
  • Code Coverage provided on the code developed

Values and Competencies

  • Get stuff done:completing tasks, and contributing to the deliverables of the team to ensure we deliver high quality products
  • Be the best you can be:investing time in learning and sharpening your skills. Teaching and sharing your unique skills with the rest of the team
  • Do the right thing:we build a culture of mutual respect and collaboration, admit to mistakes and learn from them
  • Servicing the customer:at the forefront of providing service excellence and customer satisfaction
  • Solve together:we conduct ourselves in such a way that we work harder, cooperate and be supportive of one another and contribute to the team spirit
  • Build a bridge:progress with what you have and solve a challenge
  • Add value:to tasks, interactions with colleagues and customer interactions
  • Have fun!we enjoy the work we do and the people that we are doing it

Direct reports:

Influence, collaborate and co-ordinate with:

  • Product Owner
  • Developers
  • Managers
Get your free, confidential resume review.
or drag and drop a PDF, DOC, DOCX, ODT, or PAGES file up to 5MB.