高级C++开发工程师 - 嵌入式极性码算法专家 | 远程职位

远程
全职
我们正在寻找一位资深的C++开发工程师加入我们的远程工程团队,专注于关键的纠错算法项目。您将负责在嵌入式armv7m平台上实现高效的极性码算法,创建不使用浮点运算的优化代码。这是一个全职远程职位,需要深厚的算法知识和出色的低级编程技能。 项目概述 该项目涉及选择"缩短极性码"(Shortened Polar Codes)的参数并开发高效的C/C++实现。您需要分析现有库代码,根据特定需求进行调整,并针对嵌入式系统资源约束进行优化。您可以利用任何可用的代码库(如GNU Radio中的极性码实现),最终代码的许可证不受限制。 主要职责 - 研究并选择缩短极性码实现的最佳参数,确保算法性能达到要求。 - 为嵌入式armv7m平台开发高效的C/C++代码,实现无浮点运算的纠错算法。 - 分析、理解并优化现有库代码,使其适应项目特定要求。 - 优化代码以高效处理27字节数据包(32字节中缩短5字节)。 - 确保每个数据包中18字节有效数据的正确处理。 - 详细记录实现细节、算法参数选择和优化策略。 - 与工程团队密切合作,确保解决方案与更大系统的无缝集成。 - 执行全面的测试和性能分析,确保算法的正确性和效率。 必备技能 - 5年以上C/C++开发专业经验,熟悉C++17/20等现代标准。 - 对算法和数据结构有深入理解,特别是在纠错编码领域。 - 嵌入式系统编程的丰富经验,尤其是ARM Cortex-M架构。 - 具有定点算术实现和优化技术的实践经验。 - 能够阅读、理解和修改复杂的算法实现代码。 - 具备算法参数选择和性能调优的卓越分析能力。 - 熟悉资源受限环境下的代码优化技术。 - 能够在远程环境中独立工作并保持高效沟通。 - 解决复杂技术问题的出色能力和分析思维。 加分项 - 极性码或其他前向纠错算法(FEC)的实际实现经验。 - 了解通信协议和数字信号处理基础知识。 - 信息理论和编码理论的背景知识。 - 电信或无线通信领域的工作经验。 - 熟悉GNU Radio代码库和软件定义无线电(SDR)框架。 - 在内存和CPU受限环境下的代码优化经验。 - 了解armv7m汇编语言,能够优化关键代码段。 - 有嵌入式系统调试和性能分析工具使用经验。 技术环境 - 开发语言: C/C++(最新标准) - 目标平台: 嵌入式armv7m架构 - 算法类型: 缩短极性码纠错算法 - 数据规格: 32字节数据包(缩短5字节,实际27字节) - 有效负载: 每个数据包18字节有效数据 - 开发资源: 将提供算法参数选择和仿真资源,以及编解码器实现库 我们提供 - 全球范围内的完全远程工作安排,工作时间灵活。 - 参与前沿纠错技术开发的宝贵机会。 - 与通信系统领域专家工程师的紧密合作。 - 在专业算法实现领域的职业成长和技能提升。 - 基于经验和能力的有竞争力的薪酬待遇。 - 项目所需的算法模拟和测试资源支持。 这是一个需要立即启动的紧急项目。如果您具备实现高效纠错算法的专业知识,并热衷于解决嵌入式系统的技术挑战,我们期待您的加入。作为团队的关键成员,您将有机会在通信算法领域展示您的专业技能并产生实质性影响。