Our Client in the Off-Grade Solar Energy Industry requires a Senior Software Engineer to join their team.
Responsibilities
As our Senior Software Engineer, you will be responsible for the design and implementation of functional software solutions and you will be reporting to the Head, Software Engineering. You will work with Upper Management, Engineering and Operations departments to define software requirements and take the lead on software development related projects. Your goal will be to develop high-quality software that is aligned with user needs and business goals. You’ll focus on:
Iteration of local customers onboarding
Continuous improvement of solar base capacity to support business needs
Management of recurrent payment and unit test coverage
Develop high-quality software design and architecture with scalability in mind.
Identify, prioritize and execute tasks in the software development life cycle.
Develop software tools and applications by producing clean, efficient code.
Automate tasks through appropriate tools and scripting with the data engineering team.
Review and debug code.
Collaborate with internal teams and vendors to fix and improve products.
Continuous improvement of your technical knowledge and mentor junior team members.
Ensure software is up-to-date with the latest technologies.
Document development phases and monitor systems.
Team leadership and administrative support.
Other tasks as assigned by the Line Manager.
Requirements
5+ years of experience in software engineering
Proven experience as a Senior Software EngineerHands-on experience in software development, IoT systems, Cloud services and agile methodologies.
Knowledge of selected programming languages (e.g. Javascript, PHP, C++).
Experience in building scalable systems.
Must have worked with SPA framework (e.g. ReactJS, VueJS or Angular)
Knowledge of Mobile application development (Prefered tool: Flutter).
Understanding of behaviour-driven development.
Extensive experience in software development, scripting and project management.
Experience using Cloud infrastructures & services.
In-depth understanding of IoT systems and Distributed computing.
In-depth knowledge of relational databases (e.g. PostgreSQL, MySQL) and NoSQL databases (e.g. MongoDB, DynamoDB).
Familiarity with various operating systems (Linux/Unix-like).
Excellent communication, organizational and leadership skills.
Core skills in Scripting (JS, Python, PHP), Mobile (Flutter), Front End (VueJS), Databases (PostgreSQL, DynamoDB), Cloud (Amazon Web Services), and DevOps (CI/CD).
Flexibility and comfort working in a fast-paced, changing environment.
Good communication, and strong leadership qualities.
Excellent time management, task prioritizing and organisational ability.