In softheart.io we work on software projects for international companies. Our main product - officehawk.com automates the business processes of commercial real estate brokers. We are based in Warsaw, Poland.
Our requirements:
- 2+ years of commercial experience with Python
- Django
- Relational databases (preferably PostgreSQL)
Nice to have:
- Django Rest Framework
- Docker
- Nginx
What do we work with:
- Code review
- Git
- CI
- Gitlab
- JIRA
- Sentry
- Portainer (container management system)
- Slack
What we are offering:
Flexible working hours
Office in the city center of Warsaw
Friendly atmosphere
International, dynamic team
Development opportunities
Salary: 8000 - 15000 PLN
Even more details:
Awesome if you:
- Know Django (1.11, 2), can `prefetch_related`, can design object level permissions, use GenericForeignKey, create a report in openpyxl, Q?, F?, Window?
- Read the documentation of DRF and know it needs to be read again,
- Understand most of the blocks, read some of the code (how does BaseSerializer behave without data?)
- Had experience with a CI system, preferably GITLAB CI (similar like Ansible/Puppet will help too)
- Understand docker with docker-compose and have reasonable grasp of their documentation
- Understand various Dockerfiles, caching, entrypoints and debug container environments. To help you, let me list some of the containers we use:
- https://github.com/JrCs/docker-letsencrypt-nginx-proxy-companion
- https://github.com/jwilder/docker-gen
- https://hub.docker.com/r/grafana/grafana/
- https://github.com/docker-library/memcached/blob/d738ff7a7867423c9232adc7d9b418ce0f7597f0/alpine/Dockerfile
- Have good Linux servers grasp (chmod, users, some security, processes managment, what will happen if you kill -9 postgres container? Does docker inspect scare you?, ssh and friends, pipes, .... sed -n -e 's/^\([[:alnum:]-]\+\).*/\1/p' .gitlab-ci.yml ? :)
- Know nginx config, HTTP headers, practical SSL,
- Know when to use good style and when to take shortcuts (no 79 columns arguments, please, do lint your YAMLs, do flake8 production commits)
- Can discuss good python practices, take a stance, negotiate, advise, take feedback and improve, help others improve
- You don't need to know crazy gotchas about Python but do know stdlib well enough to not shot yourself in the foot while re-implementing lru_cache or csv.DictReader, know pytest
- know PyCharm, vim, virtualenv[wrapper]/pyenv/git
You don’t need to:
- know python2.7, we're 3.6.5 and most system we run are fresh and are kept up to date, we have little legacy code
- be versed in all of the above, you will learn along the way, we will learn from you, show us your favourite tool
- like front-end, we have a dedicated person for this
- deal with "UnicodeDecodeError: 'ascii' codec can't decode byte 0xe8 in position 1", lol, python3.6