Software Engineer – Backend, Cloud Services
- Job Description:
- Designs, develops, and maintains RESTful APIs connecting mobile and web applications to backend services.
- Develops, refines, and maintains the irrigation scheduling engine, optimizing logic for water efficiency, environmental conditions, and user preferences.
- Builds and manages database schemas, queries, and data models to support device telemetry, scheduling, user data, and analytics.
- Integrates with AWS IoT Core to handle secure device connectivity, telemetry ingestion, command processing, and synchronization with the cloud.
- Implements core business logic and automation for irrigation, notifications, and AI-driven recommendations.
- Collaborates closely with the Machine Learning Engineer to integrate predictive models and automate decision-making based on environmental or device data.
- Designs and maintains telemetry ingestion pipelines to process high-frequency data from connected devices.
- Ensures backend systems meet performance, reliability, and scalability requirements through monitoring, testing, and proactive optimization.
- Implements security best practices, data protection policies, and access controls across backend systems.
- Writes unit and integration tests for backend services and collaborates with the QA/Automation Engineer to ensure coverage, CI/CD integration, and deployment quality.
- Collaborates with frontend, mobile, and IoT engineers to deliver consistent and efficient user experiences.
- Documents backend architecture, APIs, and data flows to support internal development and cross-team alignment.
- Troubleshoots and resolves production issues, ensuring minimal downtime and high system availability.
- Evaluates and adopts emerging backend technologies, frameworks, and design patterns to improve system performance and maintainability.
- Focuses on the voice of the customer and continuously improves products and services to deliver meaningful user value.
- Requirements:
- Bachelor’s degree in Computer Science, Software Engineering, Information Systems, or a related technical field, or a combination of education and relevant work experience.
- Minimum 2–4 years of experience developing backend systems, APIs, and database-driven cloud services in a production environment.
- Proficiency in backend programming languages such as Python, Node.js, or Go in a production environment.
- Hands-on experience with AWS services including but not limited to IoT Core, Lambda, API Gateway, DynamoDB, RDS, S3, and CloudWatch.
- Ability to write clean, testable, and maintainable code in a collaborative production environment.
- Strong understanding of database architecture, indexing, and performance optimization (SQL and NoSQL).
- Knowledge of IoT communication protocols (MQTT, HTTP, WebSockets) and secure communication methods such as mTLS.
- Familiarity with event-driven, serverless, and microservice architectures for building scalable, cloud-connected systems.
- Experience implementing authentication and authorization frameworks (OAuth 2.0, JWT).
- Understanding of DevOps practices, containerization, and CI/CD pipelines (Docker, Bitbucket Pipelines, GitHub Actions, or similar).
- Strong debugging, problem-solving, and analytical skills.
- Ability to collaborate effectively with cross-functional teams in an agile environment.
- Excellent written and verbal communication skills.
- Familiarity with Agile development practices preferred.
- Benefits:
- Amazing corporate culture - we walk the walk when it comes to our values!
- FUN company events!
- Company donation matching and volunteer rewards
- Career development opportunities and profit sharing bonus
Apply tot his job
Apply To this Job