- Experience
- 7+ yrs
- Salary
- —
- Openings
- 1
- Posted
- 1 jam yang lalu
- Work mode
- Work from home
- Education
- Bachelor's degree in Computer Science or related field
- Resume
- Required to apply
Job description
Position Summary
We are looking for a seasoned Senior Java Backend Developer to join our engineering team remotely. This role focuses on creating and maintaining a highly concurrent IoT Platform as a Service (PaaS), involving scalable backend development for IoT data management, mentoring junior staff, and collaborating across teams to develop robust enterprise-grade solutions.
Primary Duties
- Design and develop backend IoT PaaS services utilizing the SpringBoot framework.
- Construct data collection endpoints supporting communication protocols like TCP, UDP, MQTT, and HTTP.
- Develop scalable systems to process and analyze real-time IoT data streams.
- Implement reliable data delivery endpoints and business APIs for smooth system integration.
- Create audio/video alarm and media streaming components for monitoring.
- Architect modular protocol-specific device access modules.
- Develop protocol decoders based on specified rules for integrating new IoT devices.
- Integrate third-party platforms via webhooks and OpenAPI methods.
- Optimize backend systems for handling high-throughput IoT data environments.
- Lead code reviews, provide mentorship and drive backend architecture decisions.
- Partner with frontend teams, DevOps, and product managers to deliver coordinated solutions.
- Apply thorough testing procedures and establish monitoring frameworks.
- Ensure adherence to coding standards and development best practices.
- Engage actively in agile and sprint planning workflows.
Requirements
- Bachelor's degree in Computer Science, Software Engineering, or a related discipline, or equivalent professional experience.
- Minimum of 7 years in Java backend development, with a history of constructing highly concurrent distributed systems.
- Senior or lead level experience within agile development environments.
- Advanced expertise with Java 8+ and Spring ecosystem (including SpringBoot, Spring MVC, Spring Security, Spring Data).
- Proficiency with persistence frameworks such as Hibernate, JPA, JDBC, and MyBatis.
- Experience with Netty for network programming and protocol handling.
- Familiarity with message queue technologies like RabbitMQ and Apache Kafka.
- Experience utilizing Redis for caching and session handling.
- Knowledge of MongoDB and MySQL database design and management.
- Understanding of IoT protocols (TCP, UDP, MQTT, HTTP, WebSocket) and RESTful API development with OpenAPI standards.
- Experience implementing webhooks and integrating with third-party platforms.
- Competence with streaming media formats, audio/video processing, and version control using Git.
- Understanding of microservices and distributed systems architecture.
- Strong problem-solving skills, attention to detail, effective communication, and mentoring capability.
Preferred Skills
- Experience with Docker and Kubernetes for container orchestration.
- Linux/Ubuntu server management experience.
- Familiarity with distributed streaming platforms such as Apache Kafka.
- Use of Elasticsearch for logging and search functionalities.
- Knowledge of time-series databases like InfluxDB and TimescaleDB.
- Understanding of IoT device management and protocol translation.
- Experience with real-time processing frameworks like Apache Storm and Apache Flink.
- Skill with monitoring tools including Prometheus, Grafana, and ELK stack.
- Awareness of IoT security best practices.
- Experience in CI/CD pipeline development and DevOps methodologies.
- Contribution to open-source Java projects.
- Experience deploying cross-platform solutions.
Skills
Work styles they’re looking for
Communication
Problem Solving
Collaboration
Attention to Detail
Mentorship