Explore the future of FinTech! With superb engineering, we help the finance industry to change just in one click! Join the global Intellias team to develop top-of-the-line solutions for the world’s leading FinTech companies.
Requirements:
* At least 5 years of professional Rust software development experience
* Strong understanding of Rust, memory management, STL containers, and algorithms
* Good knowledge of OOAD, architecture and design patterns, API design principles
* Hands-on experience with low-latency, multithreading, including race conditions, deadlocks, etc.
* Experience with PostgreSQL, particularly in handling large-scale datasets and optimizing queries
* Practical experience with unit-testing
* Excellent analytical, algorithmic and optimization skills
* Experience with debugging tools
* Ability to communicate effectively, both written and verbal, with technical and non-technical multi-functional teams
* High critical thinking skills to evaluate alternatives and present solutions that are consistent with business objectives and strategy
* Self-motivated, well-organized, detail-oriented, and a strong team player
* Creativity and high level of independence
* Experience with all phases of the software development life cycle
* Understanding of Agile methodologies (Scrum, Kanban) and engineering practices
Will be a plus:
* At least 5 years of professional C++ or Java software development experience
* Aptitude and desire to independently learn new technologies
* Experience with any trading, crypto solutions development
* Experience with task management tools like Jira, Asana, ServiceNow etc.
* Experience with code versioning tools such as Git (pull requests, branching strategies, tags, etc.)
* Familiarity with CI/CD tools (Jenkins, GitLab, GitHub, Harness)
* Familiarity with the build process management tools such as CMake/Make
* Experience in documentation creation
* Experience with containers (Docker, Kubernetes)
Responsibilities:
* Write clear, understandable and highly optimized Rust code according to best practices
* Develop new features including the design of interfaces and implementation to support reusability, testability, modularity in accordance with the agreed plans and quality standards
* Enhance existing features and improve the quality of the libraries and tools
* Ensure that feature implementation meets client expectations
* Provide time estimates and time/performance/quality trade-offs to management and other teams
* Participate in technical discussions to find the right architecture/design solution
* Contribute to architectural planning and refactoring
* Perform code reviews
* Defect analysis and fixing
* Report the status, results and roadblocks
* Conduct an interviews
* Collaborate effectively with engineers and other team members, transfer knowledge and insights