شرح موقعیت
محصولات شرکت نآد در راستای ارائهی راهکارهای امن و سریع با روش طراحی توأمان سختافزار/نرمافزار (Hardware/Software Codesign) میباشد. هستهی نرمافزاری محصولات بر روی سیستمهای Embedded و در محیط bare-metal و به زبان C/C++ میباشد. قصد داریم در ادامه بخشهای جدید را با زبان Rust توسعه دهیم و به مرور کدهای قبلی را نیز با زبان Rust بازنویسی کنیم. در استانداردهای توسعه نرمافزار شرکت نآد، تست و ارزیابی از اجزای اصلی هر task به شمار میآید که در فرآیندهایی خودکار به طور مداوم اجرا شده و مورد بررسی قرار میگیرند. طراحی و پیادهسازی نرمافزار در چنین محیطی مستلزم تسلط و تجربه در لایههای پایین نرمافزاری میباشد و گاهی نیز با چالشهایی جذاب و آموزنده همراه است. ما به دنبال برنامهنویسانی هستیم که در حال حاضر حداقل به یک زبان برنامهنویسی تسلط دارند، اما آیندهی خود را در زبان Rust میبینند. از جمله وظایف مورد انتظار شرکت موارد زیر میباشد: طراحی و توسعهی نرمافزار طراحی و توسعهی تست Refactor و بهبود کدهای موجود تشخیص صحیح نیازمندیهای کاربران محصولات ایجاد و نگهداری مستندات مربوط به توسعهی محصول مهارتهای ضروری: تسلط بر یک زبان برنامه نویسی (مانند TypeScript یا ++C یا Java یا Python یا ...) آشنایی و تجربهی برنامهنویسی با زبان Rust تسلط بر Clean Code و مفاهیم معماری نرمافزار تسلط بر فرآیند تست و ارزیابی کد و TDD تسلط بر Git تجربه کار با Linux آشنایی با مفاهیم شبکه آشنایی با مفاهیم سیستمعامل مهارتهای امتیازی: تسلط بر Linux تسلط بر مفاهیم شبکه آشنایی با ReactJS آشنایی با GraphQL آشنایی با مفاهیم رمزنگاری تجربهی کار با سیستمهای نهفته آشنایی با CI و Docker آشنایی با همروندی در برنامه نویسی ویژگیهای شخصیتی: داشتن روحیه کار تیمی داشتن روحیهی یادگیری داشتن روحیهی رشد و پیشرفت توانایی حل مسئله
نیازمندیها
- Java
- Rust
- Git