UpEnergy brings aspirational energy saving products within reach for low-income communities. We create valuable health and environmental outcomes by providing our users with products that improve their lives every day. Our approach combines local, on-the-ground teams leveraging our platform to best serve users, with over a decade of experience building platforms that generate valuable carbon emission reductions and allow us to provide our products to local communities at affordable subsidized prices.
Location: Remote
Job Type: Full time
Department: Business Development
About the Role
UpEnergy is at a time of exciting growth, and rapidly expanding into new geographies and new product categories. As part of this growth, we are looking to ensure that our ecosystem of digital tools is robust enough to support our commercial and credit operations.
In this context, UpEnergy is seeking an experienced and passionate Software Engineer to lead decision making around system architecture and continued development of their Salesforce platform and numerous integrations. The Software Engineer will report to the Head of Product.
The right candidate will be pragmatic, and excited to find the right balance between developing software in-house and leveraging off-the-shelf technologies to optimise for the needs of the business and our customers.
The UpEnergy Software Engineer is an exciting position that will provide the opportunity to work across multiple UpEnergy markets. If you are eager to gain incredibly rich, hands-on experience while being part of one of the fastest growing social enterprises in Africa and believe you’re up for the challenge (as well as a lot of fun!), we’d love to hear from you!
Key Responsibilities
System Architecture and Optimisation (approx 20%)
Design and implement UpEnergy’s digital strategy. Own key technical decisions, including the choice of technical stack, build vs. buy components and the composition of the software team.
Investigate solutions and techniques to improve our in-house and off-the-shelf tools and software packages, assuming responsibility for the low-level integration into our pipeline and high-level functionality.
Software Development (approx 80%)
Collaborate with our Head of Product to determine a roadmap of new features and technical epics to ensure that UpEnergy’s software tools are secure, robust and meeting the needs of the business and our customers.
Collaborate with our Head of Product to deliver working software on a weekly or bi-weekly basis with daily stand-up meetings to ensure rapid, iterative and customer-focused delivery. We believe in progress over perfection!
Create and implement policies around coding guidelines, code-review and input on key architectural decisions.
Create and maintain documentation pertaining to systems design and environment set-up for team onboarding and integration purposes.
Run technical interviews and make recommendations for future engineering candidates.
Does This Sound Like You?
Must Have:
5+ years of experience
Experience developing and customizing Salesforce, especially with multiple API integrations
Experience working with SMS and Mobile Money API services
Solid experience with at least one server-side language (Python preferred)
Mobile App development experience (Android Native preferred) with online / offline capabilities
Knowledge of Amazon Web Services (AWS) or a similar cloud-hosting platform
Experience creating and maintaining scalable web applications with robust API layers.
Database administration and data management skills (RDBMs)
Prior experience with software design for testability (white-box, unit testing)
Experience with git and GitHub based source code management
Interest in products for emerging markets
Excellent written and verbal communication skills in English
Availability to travel (approx 10%)
Nice to Have:
Bachelor's or Master's in a relevant Engineering discipline (Computer Engineering, Software Engineering, Computer Science preferred)
Working knowledge of good practices for computer and data security