As a Junior Software Developer, you will take ownership, responsibility, and accountability for running, maintaining, and troubleshooting the organization’s codebase, systems, and data flows.
Specific Responsibilities
Software Development
- Build and maintain data flows and integrations between various platforms and databases, including but not limited to messaging and ticketing platforms, GCP, AWS, MongoDB and more.
- Create and maintain MongoDB and PostgreSQL databases for organization’s data.
- Prepare technical specifications as well as documentation for software engineering analysis.
- Develop and evaluate technical design, architecture and framework.
- Contribute to the entire software development lifecycle inclusive of collection, design, analysis, development technologies and version control etc.
- Conduct application testing of parts, modifications and entire systems.
- Prepare and execute training plus documentation for software engineering applications.
- Support task plans, estimation, schedules and staffing.
- Direct and review software engineers plus consultants work on project teams.
- Design and develop technical solutions on the basis of functional specifications.
- Design code, install, maintain, unit test and retrofit software programs.
- Evaluate code non-conformities and prepare code enhancements.
- Develop documents for use through internal and external clients.
- Provide technical support and information to various team members.
- Review software design ideas and present work estimates.
- Work closely with other members of the technical team, developers, UX designers, business, and systems analysts.
Team
- Collaborating with management, team leads, and team members to design and implement new processes, to resolve issues, and to ensure solutions are viable and consistent
- Structuring and prioritising business requirements and communicating plans with stakeholders for review and approval
- Maintaining and updating processes and procedures
- Training team members on technical and non-technical subjects.
Other
- Update job knowledge by participating in educational opportunities; reading professional publications; maintaining personal networks; participating in professional organizations
Skill Requirements
- Proven experience as a Software Developer, Software Engineer or similar role.
- Extensive experience with Python development in a fast-paced business environment.
- Experience creating and maintaining MongoDB and PostgreSQL databases.
- Experience working with Cloud Services (AWS, GCP, Azure.)
- Experience with Docker
- Experience with Machine Learning platforms.
- Extensive experience with RESTful Web Services.
- A background in data science or data engineering will be considered a strong bonus.
- Experience with software design and development in a test-driven environment
- Knowledge of other coding languages (e.g. C++, Java, JavaScript) and frameworks/systems (e.g. AngularJS, Git.)
- Experience with databases and Object-Relational Mapping (ORM) frameworks.
- Familiarity with UI toolkits and frameworks.
- Ability to learn new languages and technologies.
- Resourcefulness and troubleshooting aptitude.
- Very strong attention to detail.
Education: The candidate must have a bachelor’s degree in Software Development, Computer Science, Data Science, Information Technology, Information Systems, Statistics, Applied Math, or any other related field.
Experience: The candidate must have at least 3-4 years’ experience in a software development position, preferably working as a software developer in a fast-paced and dynamic business setting. A background in data science or data engineering will be considered a strong plus. Experience working in the Health sector will also be considered a plus.