What we’re looking for
If you’re someone who thrives in fast paced innovative environments, and has a passion for
creating products, then the role of Mobile Engineer at Dukka Inc. might be right for you. This
is an innovative new product for emerging markets. We are building something that does not quite
exist in the African business landscape and this will be an opportunity for you to put your
stamp on the product that is being built.
Job Description
We want engineers that think about the big picture, take ownership of delivery of the product,
work well with others in a collaborative environment and take pride in their work. You will be
responsible for building out primarily the mobile software applications of the Dukka solution,
but expect to do some hardware integrations and web development also, as we like expert
generalists. You should also expect to perform some infrastructure work in AWS. You will be
responsible for the uptime and responsiveness of any feature/product which you build. Hello
The core product right now is being built in Flutter, Python, and AWS. We may be open to move to
any better languages near term if we see the need for it for the core product and container
technologies for runtime environments, so we’d like you to be flexible with languages, and
teachable. We use Git for source code management, slack for communications, confluence for
documentation, JIRA for project and task management, and Range for daily check-ins.
This role reports directly to the CTO.
Responsibilities
- Identify opportunities to improve existing code or architecture
- Explore possible architectures for implementing new features.
-
We take quality seriously and you should expect to be involved in well written code
bases following common coding conventions and good software engineering practices
- Design and Build sophisticated and highly scalable apps using Flutter.
- Translate and Build the designs and Wireframes into high quality responsive UI code.
- Write efficient queries for core Data.
- Build and consume custom packages in Flutter using the functionalities and APIs already
available in native Android and IOS.
- Resolve any problems existing in the system and suggest and add new features in the
complete system.
- Suggest space and time efficient Data Structures.
- Follow the best practices while developing the app and also keeping everything
structured and well documented.
- Use CI/CD for smooth deployment.
- Document the project and code efficiently.
- Manage the code and project on Git in order to keep in sync with other team members and
managers.
- Communicate with the product owner/ team lead regarding status of projects and suggest
appropriate deadlines for new functionalities.
- Ensure security guidelines are always followed while developing the app.
- Validate the cloud system to ensure any new changes do not compromise security of the
backend server.
- Suggest new features and/or enhancements.
- Consulting with our customer facing representatives about software system design and
maintenance.
- Interact with the Clinical Specialists and Product Manager to help understand end-user
feedback.
- Maintaining software through product lifecycle including design, development,
verification and bug fixes.
- Connect regularly with the Quality Assurance Specialist to deliver a stable app.
- Resolve all the bugs reported by the Quality Assurance Specialist in a timely manner.
- Perform time profiling and memory leaks assessment.
- Execute app verification protocol.
- Write tests for the App.
- Follow company policies and quality procedures to ensure quality product deliverables.
- Collaborate with other engineers and the Product team to define clear deliverables and
establish project milestones
- Take ownership of features from end to end by going through design, implementation,
testing and maintenance phases
- Mentoring of junior developers under you.
Skills and Qualifications
- Team leadership experience
- Proficiency with Object Oriented Design
- Proven track record of delivering high impact projects
- Native Android and iOS: be able to work on custom packages
- Familiarity with software project planning and collaboration tools such as Jira, Git is
required to manage and collaborate in different projects with the rest of the team
- Flutter: To build cross platform mobile apps for Android, IOS and Web. This should
include; making responsive UIs, to efficiently query data, and also manage states in an
optimized manner
- Firebase: Should have experience with Cloud Firestore, Push Notifications, Cloud
Functions and Analytics
- Adobe XD: should know how to use Adobe XD to make use of design files to build the app
- Experience with modern MVC Frameworks such as Django, Flask, etc will earn you more
points
- Experience with AWS will earn you more points
- Experience with building and working with RESTful APIs
- Experience with building Flutter packages and libraries
- Experience with Database technologies such as Postgres, SQLite
- We’re a startup. You should be comfortable taking an imperfect feature specification,
and driving it all the way to completion.
Why you will love to join Dukka :
- We’re a rocketship 🚀
- Paid time off
- Work tools
- Very flat team structure
- Competitive salary
- We support paid parental leave
- You will have the opportunity to learn how the entire company operates
- Being part of a fun and energetic Dukka family that’s building the future we all want to
live in
- Joining a world-class team that’s building the bedrock for commerce
- And so much more!
Education
Whilst it would be great for you to have a Bachelor's/Master’s degree in software engineering
from an accredited university, we place a higher value on significant work experience in the
workforce to compensate where there is no qualification.