About the role
We are looking for a back-end developer responsible for the client side of our service. We develop and manage our own platform and we use a variety of server-side and client-side technologies. Our favourite candidates are developers that follow best practices in developing complete user interfaces with a focus on performance and are willing to take ownership and care of the product. Your primary focus will be the development of modules and components and coupling them together into a functional app. You will work in a team with back-end developers and communicate with the API using standard methods, so a basic understanding of all the components of our platform and infrastructure is necessary as well. Agile is the process we use to manage our workflow.
- Work as part of a team, developing applications and services
- Writing reusable, testable, and efficient code
- Design and implementation of high-availability and performant applications
- Able to estimate effort required and deliver to your commitment.
- Implementing automated testing platforms and unit tests
Technology is at the forefront of what we do, and the success of our company is based on our world-class technology and on finding solutions to real world problems that have not been solved to date. Our current stack includes:
- Languages: Node.js, Java, AngularJS, Python
- Android apps
- REST APIs
- Designing and manufacturing IoT ‘smart’ edge devices and expanding using Linux powered devices on the field collecting data using cutting edge technologies
- Focus on security, user authentication, permissions, data integrity
- AWS Cloud using EC2, Aurora, S3 and other services
- JIRA, Confluence, BitBucket (Atlassian products)
- Moving to a Microservices architecture using Kafka for messaging and currently implementing other patterns
- Continuous Integration and Delivery using Jenkins, SonarQube, New Relic, Docker,Terraform
- Test Driven Development environment with focus on testing and quality output
- Agile team using Scrum or Kanban (each team chooses the best approach to drive results)
- Reporting and Analytics using Pentaho
- Masters or Bachelor’s degree in computer science or any related field with emphases on information technology is preferred
- Can program using at least two programming languages - one of them being Node,js, Python, Java) and eager to expand skills, when needed, to complete a project.
- Hands-on software engineer with experience on development of a major project/product hosted in AWS.
- Solid knowledge of RDBMS (MySQL or PostgreSQL) and SQL query writing.
- Solid understanding of programming (not just using frameworks, extensions and plugins but understanding what they do, how they work and if needed build/extend them)
- Proficient understanding of code versioning tools, such as Git
- Experience in contributing to existing project(s) with imperfect documentation and rapidly evolving requirements.
- Solid understanding of concepts like Continuous Integration, Continuous Delivery, Code Coverage, Code Quality, Test Driven Development, Unit Testing, and Integration Testing.
- Have experience working with tools like JIRA and Confluence in a fully Agile environment using Jenkins as the CI tool.
- Comfortable in a fast-moving small company environment where things change based on data and customer feedback.
- Basic understanding of front-end technologies
- Competitive base salary
- Company stock options package
- Eligible for discretionary annual bonus
- Health insurance
- 25 days of paid vacation time in addition to national holidays
- Shared office space with a great working environment and a flexible approach to work
- You will love what you do – waking up every day solving one of the biggest social problems of our generation
- Committed team members with broad experience who share a common passion to build a world class business