This position is no longer available.

Senior Software Engineer

Permanent contract
Brno
Salary: Not specified
A few days at home
Experience: > 4 years

ThreatMark
ThreatMark

Interested in this job?

Questions and answers about the job

The position

Job description

At ThreatMark, we build trust and safety in the digital world through state-of-the-art behavioral profiling solutions supported by AI-based security platforms. Our products deliver payment protection, ensure user identity, and detect cyber threats for businesses around the world. We’re detecting when a customer’s behavior seems out of character, blocking fraud in real-time – helping organizations outsmart criminals.

We’ve had consecutive years of outstanding growth and commercial success, and our team is enthusiastic, dynamic, and ambitious. Our mission is to make ThreatMark’s technology the No.1 risk management system globally. We are continuously working on new versions of our product.

We are looking for skilled developers with the right attitude to expand our teams, push the boundaries of the status quo and create new technology.

Some example problems:

Verify the identity of the person using data from mobile sensors/keyboard and mouse
Detect the presence of financial malware in the browser memory
Spot session takeover by evaluating navigation patterns
Track users without using third party cookies
Identify user device (computer, mobile) – have we seen this device before?
Solving such interesting problems raises various technical challenges. Just a few examples:

There are about 70 device attributes which we can gather. Which are the best ones to use for device identification? What if a user does simply updates their operating system? Will we still recognize the device?
How should we structure device attributes, and how should we store them?
How should we compare the set of attributes so that we can recognize the same device with high probability?
How should we search in the database so that we can find the device between millions of other devices quickly?
How can we optimize the system performance so that we can handle hundreds of API requests per second and respond to each of them within 150 ms? Count some parts in advance? Cache it? Buy 100x more HW?
Do you feel excited thinking about how to deal with such problems?

Did you write malware or defaced poorly secured websites as a kid? You are our guy!
Do you go to any depth to discover the issue, even if it means debugging syscalls or low-level instructions? You are our guy!
Do you look at the code and tell yourself:
I would use some cache here instead of querying the database with each request…
This will lead to catastrophic backtracking in this regex…
Why do we keep this data in expensive inMemory DB when it is not needed anymore…
Let’s consider some different types of storage instead of a relational database…. You are our guy!

What you’ll do:

As a Senior backend Engineer, you will work in the LeSS environment in one of our SCRUM Teams. You will be participating in designing and developing new product features. You will participate in defining the architecture with strong requirements on performance and scalability and help to grow the experience inside the team. You can (if you want to) participate in some of our communities of practice (Development, Architecture, DevOps, Quality)


Preferred experience

What skills you’ll need:
We expect you to have these or to acquire them rapidly

  • Programming (this art is not about a particular language – agreed? However, our language is Python, and it is good to know the Python world)
  • Computer science skills (algorithms and structures, complexity, information theory, etc.) at the university level (we care about the skills, not the degree)
  • Strong debugging, testing, tuning, and problem-solving skills
  • Knowledge of the IT world – HTTP protocol, web apps, networking, etc.
  • Cloud engineering (AWS)
  • Work with large datasets – they might be in a relational database, dump, proto-buffers, or you might have to collect the data yourself

What would make you a strong fit:

  • 5+ years of professional software development experience
  • Demonstrable track record of exceptional software engineering skills on past projects in REAL PRODUCTION.
  • Experience building highly available low-latency systems using any programming language.
  • Experience working with large datasets and best in class data processing technologies for both stream and batch processing
  • Strong communication & collaboration skills
  • Self-starter with a quick learning curve.
  • Machine learning skills
  • Knowledge of cryptography, IT security principles, attacks, malware

Want to know more?

These job openings might interest you!

These companies are also recruiting for the position of “Software & Web Development”.