Our team is looking for a developer who would help us on our Braiins OS miner firmware project, a solution based on Linux distribution.
Apart from developing the mining software in Rust, you will also reverse-engineer miners from manufacturing companies, developing support system services, maintaining and updating the distribution and porting it to new platforms.
!Rust experience is not required!
Requirements:
- Being familiar with Git and Linux.
- Experience with Unix Shell (Bash).
- Capable of working in C/C++.
- Experience with Embedded programming.
- Experience with Rust programming is welcome, but not necessary
What we offer to you:
Opportunity to learn and use Rust language as our primary language in production 🦀
- Full-time position with flexible working hours.
- Both possibilities to work as an Employee or Freelance.
- Indefinite agreement.
- For employees 5 weeks of vacation and 3 sick days.
- Company events, and occasional Braiins brunches in the office.
- Relaxing room, a shower, and a parking spot.
- Modern offices in the center of Prague, Czech Republic — the heart of Europe.
- Work on long-term projects in an interesting area of BTC cryptocurrency.
Technologies used:
- Linux - development takes place primarily on computers with Linux distribution (Debian, Ubuntu, ...). It is not assumed that you would work on another system.
- Rust - in the current project it is the primary language.Â
- Bash - this language is not our priority and most of the time we do not use it, but it is supported by the built-in Linux distribution so we expect some knowledge from you (grep, sed, awk, ...).
- C - there will not be any future development in this language, but you should know it at least at the level of understanding the code.
- Gdb - knowledge of general principles and the ability to debug applications on a remote system using a gdb server.
- Git (GitLab, GitHub) - used for versioning and managing source code. You should be familiar with the Pull/Merge Request Policy and Code Review.
- Cross-compilations - general knowledge of translation issues for different architectures (ARM).
- Embedded protocols - basic overview of communication protocols GPIO, I2C, SPI, USART and their use in Linux at the application level. The advantage is an understanding of their functioning at the kernel level, where occasional intervention in their functioning is expected.
- JTAG / Logic Analyzer - HW debugging capability is welcome, but not required.
We will love you even more if…
- You are interested in cryptocurrencies or have active experience with them.
- You are interested in new technologies and development procedures.