Senior Software Engineer
REMOTE, United States
Overview
We are seeking a highly motivated and experienced Senior Software Engineer with a focus on backend development to join our team developing cutting-edge irrigation control systems. You will play a crucial role in designing and implementing the backend logic that interacts with physical irrigation hardware. This role offers the opportunity to work on challenging and impactful projects, contributing to sustainable water management practices.
Responsibilities
- Develop and maintain efficient C# and C++ backend software for controlling networked irrigation systems in geographically diverse areas.
- Implement irrigation control algorithms and methods to optimize water usage based on sensor data, weather conditions, and user preferences.
- Maintain and extend functionality that manages communication between the software and hardware irrigation controllers and devices.
- Collaborate with the web application development team to define and implement a seamless API for communication between the frontend and backend systems.
- Troubleshoot and resolve technical issues related to the backend system and serial communication.
- Design and implement data management solutions for storing and retrieving sensor readings, irrigation history, and other relevant data.
- Ensure code quality through unit testing, code reviews, and adherence to coding standards.
- Contribute to system architecture design and scalability planning.
- Work with Quality Assurance to identify and fix defects.
Qualifications
- Bachelor’s Degree in Computer Science, Electrical Engineering, or equivalent from an accredited university.
- Proficient in C# programming with a strong understanding of object-oriented design principles.
- Experience with multi-threading and concurrent programming.
- Experience with data management solutions (databases or file systems).
- Excellent problem-solving, analytical, and communication skills.
- 5+ years of software engineering experience, with a focus on backend development.
- Demonstrated ability to deliver high-quality software on time.
- Experience with version control systems (e.g, Git).
DESIRED QUALIFICATIONS:
- Experience with C++ development.
- Experience with developing embedded systems or interacting with hardware devices.
- Experience with unit testing frameworks (e.g., NUnit).
- Experience with serial communication protocols (e.g., RS-232, RS-485).
- Experience with cloud-based solutions (AWS, Azure, GCP).
#LI-Remote
Salary range for candidates based in California: $ 158,954.78- $ 238,432.17
Salary range for candidates based in Colorado or New York- New York City: $ 148,555.87-$ 222,833.80
Salary ranges include base salary and annual incentive bonus if applicable.
Exact compensation may vary based on skills, experience, and location.
Rain Bird is an equal opportunity employer
ApplyJob Profile
Colorado Must be based in California New York
Tasks- Collaborate on API development
- Contribute to system architecture
- Design data management solutions
- Develop backend software
- Ensure code quality
- Implement irrigation control algorithms
- Maintain communication between software and hardware
- Troubleshoot backend issues
AWS Azure C C++ Cloud solutions Concurrent Programming Data Management Embedded systems GCP Git Multi-threading NUnit Object-oriented design Quality Assurance RS-232 RS-485 Serial Communication Unit Testing Version Control
Experience5 years
EducationBachelor's degree in Computer Science Bachelor's degree in Electrical Engineering Equivalent
TimezonesAmerica/Anchorage America/Chicago America/Denver America/Los_Angeles America/New_York Pacific/Honolulu UTC-10 UTC-5 UTC-6 UTC-7 UTC-8 UTC-9