Senior Software Developer
IT – Software Development
Cape Town – Western Cape
ENVIRONMENT:
Our client is always on the lookout for ways to make sub-metering prepaid services better for everyone involved, from installers to property managers, owners, and tenants. Right now, they need a top-notch Senior Software Developer to craft software that ticks all the boxes for their stakeholders. Your job includes not just creating the software, but also testing it, fixing any bugs, and making sure the system stays in top shape. It’s all about making sure everyone has smooth and reliable access to the tools they need to get things done.
DUTIES:
- Write clean, maintainable code adhering to company standards.
- Participate in code reviews and incorporate feedback.
- Continually update and refactor existing code.
- Write comprehensive unit and integration tests for the codebase.
- Regularly review and update tests to ensure they remain relevant with evolving code.
- Engage in system and acceptance testing phases, ensuring smooth deployment and releases.
- Write comprehensive code comments.
- Create detailed user manuals or API documentation.
- Update documentation regularly based on feature changes.
- Draft and maintain technical design documents for new features or system architectures.
- Understand project requirements and translate them into technical tasks.
- Develop features and fixes within estimated timeframes.
- Regularly communicate progress to collaborators & Software Development Manager.
- Collaborate with team members on shared tasks.
- Actively participate in code reviews, providing constructive feedback and learning from peers.
- Engage productively in team meetings and brainstorming sessions.
- Engage in pair programming where necessary.
- Address incoming queries or issues from users.
- Ensure that all issues are resolved timeously.
- Collaborate with the support team to rectify user-reported bugs.
- Create post-mortem reports for critical issues.
- Prioritize and manage tasks to meet project deadlines.
- Identify personal skill development areas
- Set and adhere to personal deadlines and communicate proactively about potential delays.
- Setting personal goals and action plan.
- Allocate dedicated time for self-study, attending workshops, webinars, or conferences.
REQUIREMENTS:
- Diploma or a relevant qualification in Software Development or IT
- Software development experience of at least 5 years
- Full-stack development experience
- Knowledge of Software Development Life Cycle
Skills:
- Python, TypeScript, Dart and Golang programming.
- Web Development principles (REST)
- Git versioning control system
- SQL
- Time management
- Planning and organisation skills
- Problem-solving skills
- Ability to prioritise
- Ability to work under pressure
- Analytical skills
- Systematic skills
- Project management skills
- Can work independently and in a team
ATTRIBUTES:
- Enthusiastic
- Team player
- Goal-orientated
- Results-driven
- Integrity
- Well-organised and structured
- Analytical nature
- Logical thinker
- Self-motivated
- Accurate
- Punctual
- Excellent time-management skills
- Good communication skills