台北市內湖區5年以上專科以上
Key Responsibilities: 
1. Backend Development and Optimization
•	Design and implement high-performance backend components, services, and libraries in C/C++/Python.
•	Develop modular and reusable software libraries with clear APIs and documentation.
•	Optimize memory usage, CPU cycles, and application performance through advanced debugging and profiling techniques.
•	Develop multi-threaded and asynchronous applications using POSIX threads, Boost, or similar libraries.
2. System Design and Architecture
•	Architect and build scalable, distributed backend systems to meet complex business requirements.
•	Work on low-latency systems, implementing efficient networking protocols such as TCP, UDP, and custom protocols.
•	Contribute to the design of RESTful or binary APIs, ensuring secure and seamless communication between components.
3. Embedded and System-Level Programming
•	Write and optimize system-level code for Linux environments, focusing on performance and reliability.
•	Develop hardware-interfacing applications, including booloader, drivers and kernel.
•	Handle memory management, inter-process communication (IPC), and shared resources in constrained environments.
4. Performance Tuning and Debugging
•	Perform low-level profiling and tuning of applications using tools like perf, VTune, gprof, or Cachegrind.
•	Optimize memory management using custom allocators, object pooling, and stack memory usage.
•	Use advanced debugging techniques, such as core dumps, stack traces, and hardware breakpoints.
•	Identify and eliminate bottlenecks in CPU-bound, memory-bound, or I/O-bound processes.
•	Tune compiler settings and write efficient algorithms to achieve optimal performance.
•	Debug complex issues in production systems using gdb, strace.
5. Networking and Protocol Development
•	Develop efficient network protocols and manage socket programming for server applications.
•	Implement and troubleshoot networking layers, including SSL/TLS, WebSocket, and HTTP/2.
•	Develop custom communication protocols for specialized use cases, such as real-time streaming or IoT.
•	Optimize networking stacks using socket programming, zero-copy mechanisms, and protocol offloading.
•	Collaborate on the design of custom communication protocols for real-time or distributed systems.
•	Familiar with Layer2 802.1Q, VLAN, bridging, spanning tree, LLDP, LACP protocols.
•	Familiar with Layer3 Router, Firewall, ACL protocols.
•	Familiar with 802.11 wireless protocols.
6. Testing and Quality Assurance
•	Write robust unit tests using frameworks like Google Test (gtest) or Catch2.
•	Perform system-level testing to ensure reliability in production environments.
•	Establish continuous integration pipelines for automated testing and deployment of C/C++/Python codebases.
8. Security and Compliance
•	Implement secure coding practices to prevent vulnerabilities such as buffer overflows, race conditions, and memory leaks.
•	Implement secure transport protocols (SSL/TLS) and encrypt sensitive data at rest and in transit.
•	Design fault-tolerant systems with redundancy, checkpointing, and automatic failover mechanisms.
•	Perform threat modeling and integrate security measures into the development lifecycle.
•	Ensure backend systems are secure from common vulnerabilities (e.g., OWASP Top 10).
9. Integration with Hardware and External Systems
•	Develop backend services that interface with hardware or IoT devices, handling real-time data streams.
•	Manage communication with hardware peripherals via protocols like SPI, I2C, or CAN.
10. Continuous Improvement and Innovation
•	Stay updated with advancements in C/C++/Python standards and emerging technologies.
•	Contribute to open-source projects or internal frameworks.
•	Propose innovative solutions to improve development workflows, system performance, or user experience.
Please also apply for the position for speeding up the process, thank you.
https://jobs.ashbyhq.com/netgear/ac565f80-86a5-43db-a1d9-917efe942173