Python full-stack developer
Ukraine・Kyiv・Lviv・Flexible remote // Build tools used by engineers, contribute to mission-critical projects.
The opportunity: #
This vacancy is open exclusively to Ukrainian residents currently living in Ukraine (preferably in Kyiv or Lviv).
Our product team is looking for an experienced full-stack Python developer. Join us to build tools used by engineers worldwide and contribute to mission-critical projects!
We are a data security solutions company, our solutions are well-known amongst security-aware teams worldwide and popular for easily solving complicated security challenges. Apart from building “off-the-shelf” solutions, we design custom security controls for novel problems and handle mission-critical, multi-app, multi-platform distributed systems, addressing serious issues in the world around us.
We work in the B2B space, with customers such as power grid operators, payment processors, legal companies, and million-user customer applications.
Markets: EU, UK, USA.
Sounds interesting?
You will: #
- Take ownership of developing user-facing features with a focus on responsive and intuitive design
- Build efficient and reusable front-end systems to power our web applications
- Write clean, maintainable, and well-documented code
- Participate in code reviews and contribute to both individual and team growth
We would expect you to have: #
- Python 3, Django or aiohttp 3+ years
- Asyncio, queues, synchronisation
- Django ORM or Sqlalchemy Core
- PostgreSQL, raw SQL
- JavaScript, React 2+ years
- HTML5 / CSS3
- Docker, docker compose
- Linux, bash
- Understanding of GOF, SOLID, Dependency Injection, Clean Architecture principles, Modular Monoliths
- Understanding of asynchronous and multi-threaded programming: asyncio, threading, multiprocessing
- Good spoken and written English (B2+) for team communication and code documentation
As a plus you’d have: #
- Golang
- Typescript
- OAuth2
- Prometheus
- UIkit
- RabbitMQ
- gRPC
- Datatables (javascript)
- GitHub Actions
Hiring Process: #
- Resume review – up to 5 business days
- Test task – estimated time 3-4 hours
- Introductory meeting with the Head of development & solution engineering
- Technical interview with several team members
- Offer discussion
What to expect from us: #
- We build applications for clients, write code for developers, and document how it all works — for both
- Everyone on the team is happy to help, but we also respect each other’s time and know how to find answers ourselves
- Tech writing isn’t our favourite task, but we do create solid technical documentation when needed, and we’re lucky to have a tech writer to help with that
- We prefer doing things right the first time over patching things endlessly later
- We value healthy perfectionism, a sense of beauty in engineering, and a good sense of humour
Please note that you can be a perfect fit even if not everything we’ve outlined above applies to you. If you have any questions, please don’t hesitate to ask – everyone is unique.
We offer: #
Unique area of expertise: #
- Interesting and challenging work in applied security engineering: from building to breaking. Working at the intersection of different areas: designing ML security controls, supporting cryptographic protocols with security controls, protecting hardware, building reverse-resilient mobile apps, securing web apps for million of users, etc.
- Public track record in the open source part of our products, sharing your work as blogs posts, research papers and conference talks. We work with innovative companies all over the world, move quickly and dive into technologies others just hear about.
- Combining technologies: cryptography, software engineering, information security. You won’t be bored :)
- A sense of meaning and responsibility for those who seek purpose — we’re building “invisible texture of modern civilization” — bits of infrastructure finance, power grids, healthcare rely on, and we are trusted with very challenging aspects of it.
Environment: #
- Friendly and experienced team: smart people to learn from, great people to build with. Each of us is unique, we value and support each other.
- An atmosphere that motivates you to grow and get smarter every month, a healthy ratio of routine / experimentation.
- Trust: schedule, reporting, bureaucracy is kept at reasonable minimum. We hire smart people and trust them to do the right thing. When things go wrong, we help rather than punish.
- Shared decision making: this business is driven by engineering excellence, so engineers are important part of tactical and strategical business decisions.
- Friendly to humans: not just a formal vacation and sick leave quota. Feel like your mental or physical wellbeing needs care? Take some time off. Feel like working a few days from home? Sure. As long as you’re in line, we are here to support you when you’re not.
Growth: #
- Team that facilitates internal learning and growth all the time.
- Interesting technologies to work with — sometimes, even unique ones (we design applied cryptography schemes and techniques and novel ways to use them).
- Interesting engineering challenges across the board, ability to hop from high-level system design to protocol reverse engineering and clever data modelling hacks.
- Management attention to help you improve upon your personal goals (through 1:1s and mentoring).
Benefits: #
- Competitive compensation with flexible and clear bonus scheme.
- Sick leaves, 21 business days for vacation per year, extra days off — according to the agreements and laws.
- Conferences, books, courses — we encourage learning and sharing with the community. Our team members share a lot in talks, workshops and blog posts.
Not sure but considering? Talk to us. #
If you see yourself fit but a few things are off — don’t hesitate to talk anyway. It might be that your unique combination of skills and knowledge would be perfectly fitting for our environment, but we both just don’t know it yet.
Why work at Cossack Labs? #
Some companies prioritise talent and value proposition, while others understand business and would take any job that pays well. However, only few companies choose to specialise in difficult tasks as their primary competency.
We take on difficult jobs, we take mission-critical software and make it mission-secure.
- Virtualise OT infrastructure securely in the presence of active adversaries, preventing them from accessing the susceptible nation-wide network? ✓ Check.
- Provide immediate application security and infrastructure security guidance for mission-critical application that will be deployed on thousands of devices on the front-line tomorrow? ✓ Check.
- Validate counter-reverse engineering protections for power grid hardware to ensure that previously air-gapped environments were safe to open up to the outside world? ✓ Check.
- Ensure that software platforms for exchange of sensitive documents actually have a top-tier SSDLC programme that supplements missing capabilities and builds out processes? ✓ Check.
We operate as a lean core team and a diverse network of experts. The finest people you may work with include PhDs in information security and cryptography, infosec community standard contributors, in-depth experts in rare security topics, and business-centric security engineers with broad experiences. Some of your teammates have worked in infosec since the 1990s and saw the industry grow from nothing. Some of them helped write standards that govern security around you. Maybe someone’s work actually keeps the lights up while you’re reading this?
Our core engineers go through extensive indoctrination and training to become disciplined, stringent, self-sufficient field unit who owns the outcomes rather than just showing up for work.
As you grow into the Cossack Labs engineer, you’ll work on slow-paced projects to learn and improve, internal projects to innovate and build tools, and of course a few fires, because no smooth sea can make a skilled sailor. You’ll discover what works for you and what you need to learn.
We help innovators who are launching new venues of civilisation while facing significant security risks in becoming more secure and resilient. Customers trust us to achieve their business goals, not merely address gaps someone else has to identify first.
If this is a challenge you’re up to, let's talk!
How to apply?
We'd like to get your CV to start a conversation. A supporting letter explaining your story and experience in application security, what you have done in the past and what kind of work you find interesting would help, but is not necessary.