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