Currently we have development team responsible for the system. Our plan for next step is to divide responsibilities for 2-3 development teams, including R&D team, which will be responsible for creating proof of concepts of new features, testing new algorithms on our data and generally improve effectiveness using broadly defined machine learning techniques.
In Growbots we build applications using Python and Tornado framework (plus Celery). As data store we use mainly Elasticsearch (NoSQL database) and RabbitMQ as a message queue. We make up a modular system, using the REST APIs to communicate between applications. Among others we use HTML5, JS, ReactJS, Flux and Bootstrap for frontend. We operate in accordance with the Clean Code, we do code review, we use Git, actively use Agile methodologies. Our environments we deploy on Amazon's cloud, we use Docker and Ansible for that. We are open for all reasonable new technologies!
Some interesting numbers about our system:
- 15 separate modules and applications being part of our system architecture,
- more than 100 000 000 records in database,
- more than 3 000 000 new records added to the database each day as a result of crawling,
- more than 5 000 000 messages published to queue each day,
- more than 30 servers used,
- more than 150 CPU cores used,
- more than 500 GB of RAM,
- more than 15 TB of SSD storage,
- more than 1 000 000 PLN reserved for the infrastructure for next 1-2 years.
- We have built a cool team of aligned people.
- We cooperate with many customers from the USA, including companies worth millions of dollars - we have achieved better results than their internal sales departments.
- We are partakers of the acceleration program 500 Startups (http://500.co) - masthead investor from the United States. Beyond the additional funds we get access to the support of mentors, investors, as well as we get the opportunity to work with the best start-ups in the world.
- We cooperate with data scientist working in Facebook AI Research, which creates the best solutions of machine learning in the world.
- cooperation with a young, but experienced team of people achieving further successes in the world,
- opportunity to work on solutions using current standards in the IT world and cutting-edge technologies,
- teamwork in Agile (Scrum, JIRA, daily stand-ups, planning sessions, sprints, retrospectives),
- possibility of real influence on the shape of the developed solutions,
- opportunity to gain experience in start-up operating in Silicon Valley and across the United States,
- an informal, friendly atmosphere at work,
- flexible working hours (including part-time ⅘ and part-time remote work),
- attractive salary (junior: 3 500 - 6 000 PLN net, senior: 6 000 - 12 000 PLN net, depending on your experience and skills),
- great location in the center of Warsaw (Hoża street, 5 minutes to Central Railway Station),
- fair contract conditions (no NDA and non-compete clauses).
Interested in? Please apply!
- at least 2 years of professional experience as a software engineer,
- very good knowledge of Python (or convince us that you're great programmer who can quickly learn other languages/technologies),
- experience with relational databases (MySQL or similar),
- at least basic knowledge of algorithms and data structures,
- high analytical skills,
- ability, desire and willingness to learn continuously,
- knowledge of English - at least B2 level,
- high self-discipline and responsibility,
- to be an easy-going, self-motivated doer, who likes a challenge.
- experience in working with big data and NoSQL databases (preferably ElasticSearch),
- machine learning knowledge,
- experience with DevOps,
- knowledge of Docker, Ansible,
- frontend technologies knowledge (JS, HTML5, ReactJS).