Linux System Software Engineer

Taara

Sunnyvale, CA • On-site

Full-time

Posted 4 days ago


Job description

About the Team:

Born at X, Google's Moonshot Factory, Taara is on a mission to connect billions of people lacking abundant and affordable internet today by pioneering the way we use light to deliver faster, cheaper, more reliable connectivity. Lead the charge in bringing our groundbreaking wireless optical communication and photonics chip technologies to the world. Drive our growth story as we scale innovative solutions across the world. Join us to light the way for bridging the digital divide and illuminating the future.

About the Role:

Taara is looking to hire a Linux System Software Engineer to build the next generation operating system for wireless optical communication networks.

The ideal candidate will have strong experience developing system-level software in a Linux environment, multi-threaded programming techniques, state-machine and event-driven programming, integration with cloud-based back-end systems, data structures, algorithms, and software development in C++ for both development and unit/regression testing

How you will make 10x impact:

  • Design, develop, and maintain system-level software applications for our next generation wireless optical terminal

  • Build expertise in Taara's unique silicon photonics and active steering technology

  • Collaborate with engineers and operators to implement telemetry/monitoring solutions

  • Use scalable reliability engineering practices to troubleshoot and resolve issues in large-scale field deployments

  • Stay up-to-date on the latest IoT device trends/technologies

What you should have:

  • Bachelor's degree in Computer Science, Computer Networking, Electrical Engineering, or a related field

  • 5+ years of experience in developing application software for Linux-based platforms

  • Experience in multi-threaded programming techniques, state-machine and event-driven programming

  • Strong programming skills in C++ for both development and unit/regression testing

  • Strong understanding of data structures and algorithms

  • Experience interacting with hardware peripherals (SPI, I2C, UART, etc)

  • Excellent problem-solving and analytical skills

  • Strong communication and teamwork skills

  • Ability to work in the Sunnyvale office at least 3 days per week

It would be great if you also had these:

  • Experience with Golang and/or Python

  • Experience with streaming telemetry / network management protocols (gRPC, OpenTelemetry, SNMP etc)

  • Experience with embedded Linux internals: U-boot, secure boot, kernel driver development

  • Understanding of modern security best practices

  • Relevant background in telecommunication or networking industries

  • Experience working in start-up like environments where things can change on a dime

  • Joy in learning new technologies, learning from your teammates and teaching them as well

The US base salary range for this full-time position is $160,000 - $210,000 + bonus + equity + benefits. Our salary ranges are determined by role, level, and location. Within the range, individual pay is determined by work location and additional factors, including job-related skills, experience, and relevant education or training. Your recruiter can share more about the specific salary range for your location during the hiring process.



Frequently asked questions

Q: What skills or qualities help someone succeed as a Software Engineer?

A: To succeed as a Software Engineer, key technical skills include proficiency in programming languages such as Java, Python, or C++, as well as expertise in software development methodologies like Agile and version control systems like Git. Additionally, strong problem-solving skills, attention to detail, and the ability to learn and adapt quickly are essential soft skills, along with effective communication and collaboration skills to work with cross-functional teams. These technical and soft skills enable Software Engineers to design, develop, and maintain high-quality software applications, driving career growth and effectiveness in the role.

Q: What is the career path for a Software Engineer?

A: A Software Engineer's typical career progression involves starting as a Junior Software Engineer, where they focus on coding and contributing to existing projects, then advancing to a Mid-Level Software Engineer role, where they take on more complex tasks, lead smaller projects, and mentor junior team members. As they gain experience, they can move into Senior Software Engineer positions, where they lead large-scale projects, architect software systems, and make technical decisions that impact the organization. With continued growth, Software Engineers can pursue leadership roles, such as Technical Lead or Engineering Manager, or transition into specialized areas like DevOps, Product Management, or Technical Consulting.



Taara job posting for a Linux System Software Engineer in Sunnyvale, CA with a salary of $140,800 to $203,000 Annually with a map of Sunnyvale location.