1. Write Code: As a Core Dev you will have to perform code assignments in a set of different programing languages to implement our roadmap.
2. Review Code: You will be tasked with reviewing your fellow devs code work for accuracy and functionality.
3. Design Software: You will lead/participate in the design phase of software projects. You may have to actively create design plans and standards for several projects.
4. Test Code: Often you will be responsible for testing your own code as well as your fellow developer codes. At times you will be asked to test and validate legacy code.
5. Analyze Data: An important part of your duties will be to analyze data in order to make decisions about design/implementation of the software.
1. Deep understanding about Data Structures and Algorithm
2. Algorithm analysis (Big-O notation, time & space complexity)
3. Solid knowledge about: event loops, locking, streams, futures, parallelism, concurrency
4. Architecture principles, microservices paradigm & scalability
5. Knowledge of Functional programming paradigm*
5. Broad and extensive knowledge of the software development process and its technologies
6. Strong knowledge of computer languages used to build strong and scalable software solutions, such as Java, C++, Rust, Scala, C#, F#, Go, Erlang/Elixir
7. Solid and active experience writing code and executing software projects
8. Good understading of UNIX/LINUX operation systems
9. Strong knowledge about network and communication protocols
10. Experience with database modeling and maintenance