New Job Opportunity
ARK Team Is Looking For Back-End Developers
Are you looking for a new challenge, do you love back-end development? When you hear the words Blockchain, Open-Source, Typescript, and Node.js, do you get all warm and fuzzy?
If you answered all of the above questions with YES, then you are in the right place.
The ARK Team is expanding its development department and wants you! If you are a back-end developer and want to be part of something unique and fresh, or maybe looking for a challenging and creative position, then this might just be the job for you.
We are looking for pure back-end developers who are not scared when they hear terms such as Byzantine Fault Tolerance, Finite-state machine, Schnorr signature, Elliptic-curve cryptography, Merkle tree, Bloom filters, WebSockets, Hash-Time Lock Contracts, etc… in short, to have an understanding of cryptography, distributed P2P networks and blockchain protocols.
We don’t discriminate in any way, shape or form. All we are looking for is someone prepared to work hard while respecting others, must beself-motivated, have knowledge of some of the terms above, enjoy working as a blockchain developer and above all else, willingness to learn and grow in the above-mentioned technology scope.
If you like to work on open source projects, love back-end development and want to be a part of a team that puts actual development before everything and doesn’t make promises they can’t keep, then being an ARK developer might be the job you were looking for.
We are looking for a long term, full-time collaboration and not seasonal or part-time workers.
What programming languages, tools, and other skills do I need to possess?
We are pursuing the Object-Oriented Approach (following SOLID design principles).
“Some skills are marked as optional (*), which means that we expect you to be proactive, think analytically and be willing to learn new technologies and developmental approaches/practices.”
Required Skills:
- Language: TypeScript
- Engine: NodeJS
- Database: PostgreSQL via TypeORM
- Cryptography: ECDSA & Schnorr*; basic understanding of how to work with raw binary data, general data serialization/deserialization of objects
- Networking: basic understanding of P2P networking and its protocols; our implementation uses SocketCluster* (WebSockets) library
- Tools: Git, Docker*
- Testing: Jest*, CI, functional, integration, unit, … high coverage is expected for all new and existing code while keeping the tests descriptive and self-explanatory so that they can serve as documentation for new devs
- SysAdmin: basic knowledge of server-based deployments* (Linux servers, NodeJS application installation) and console (CLI) part.
You will also need to be able to follow modern development standards and best practices. For example, coding standards (dependent on language), versioning standards, commit standards and test suites (if it isn’t tested it’s broken, right?).
You will also, need to be self-challenging and keep up with development from other developers in our team who are working on blockchain components.
Who is this job for?
- Those who like their workplace freedom — we don’t care if you work from your couch or from a beach soaking up the sun, as long as you are comfortable and deliver, we are happy.
- Those who like to set their own working hours — we don’t care if you work in the mornings, at nights, split time between different sections of the day, all we care about is that you are prepared to work and prove your skills.
- We won’t require you to wear suits while you work or code — underpants are just fine; after all, we won’t see what you wear when you're coding in the bed.
- Those who can work under stressful situations as well — yes, we won’t lie, sometimes work is stressful when things don’t go the way you want them to, but remember, we are a team and you are not alone.
- Those who can take a joke — we like to joke (a lot), it takes the stress out of daily tasks and bonds us together even further (memes, emojis, and gifs are a way of ARK life).
- Those who don’t like to jump from client to client — we are looking for full-time, long term developers who are loyal and want consistency, as long as you’ll work hard you’ll have a spot at ARK.
- Quality over quantity & non-dirty code — we like clean, sleek and easy to understand code that will be easily graspable for those that will be working alongside you for years to come.
- Those who are self incentivized, find work on their own, and don’t wait for everything to be assigned — yeah, we like innovative people, people that think outside the box and don’t just wait for tasks, but can find what to do on their own, we like DOers. We don’t micromanage.
What about salary?
You need to be comfortable being paid in cryptocurrency (ARK, BTC or combination of both); whatever you prefer. Invoices are issued to our ARK Ecosystem SCIC company in France (we don’t care if you are self-employed, freelancer, contractor, you have your own company, … ) as long as you can issue an invoice you are covered.
Salary is negotiated on a case-by-case basis.
Where can I see what I’ll be working on?
Primarily: https://github.com/ArkEcosystem/core (develop branch for all of the latest integrations).
Some additional core client repositories of interest:
- TypeScript Client: https://github.com/ArkEcosystem/typescript-client
- Ledger integration: https://github.com/ArkEcosystem/ledger
- JSON-RPC: https://github.com/ArkEcosystem/exchange-json-rpc
You can get a quick vision of what is the current plan with Core development at https://blog.ark.io/ark-core-path-and-vision-to-v3-7a8bc3338d5a.
Where can I apply?
You can submit your CV or send your bio, experience and previous work done to jobs@ark.io or https://ark.io/contact (subject: Job Application).
P.S.: If you become part of the ARK team, yes you will need to sign a Non Disclosure Agreement (NDA), because we are really awesome, and cannot disclose everything in this blog post.