top of page

Open vacancy* Reverse Engineer

Location: Berlin, Germany

About the company
The company was established in 2002 and now has over 50 employees from over 20 countries. think-cell is the leading data visualization software for business presentations. Our challenge is to offer the most intuitive user interface for generating complex data-driven charts and slides, while at the same time ensuring consistency, accuracy and seamless integration with Microsoft Office. We save time for our customers by automating many tasks for them, like chart labelling or slide layout. More than 1,000,000 users worldwide (such as American Express, Coca-Cola, Deloitte Consulting, Ernst & Young, Google,
Hewlett-Packard, Nokia, Porsche Consulting, etc.) rely on our software for their daily business. We work on challenging visualization problems, reverse engineering Microsoft’s code, and reinventing the user interface. And we do this all based on our own pioneering C++ library, which we have the liberty to perfect along with the rest of our code. think-cell is the only German company funding a C++ ISO committee delegation, so there is a good chance that the components we invent will find their way into the standard.
think-cell is the kind of company developers truly like. In fact, of our now 20 full-time developers, in 20 years of think-cell, only two ever quit their jobs. We are highly profitable, so we can give you the time and resources to write beautiful code. There are no meetings. All management (the two co-founders) are computer science PhDs, so no demands from people who do not understand the trade.

 

Position description
• Location: Berlin, Germany
• Position: full-time, no remote or freelancer work
• Number of vacancies: 2
• Salary: 90 000-130 000 € gross per year, after the 1st year - 130 000 € guaranteed
• Team size: 20 developers reporting directly to CTO (3 people in reverse engineering stream)
• Reason for opening: we have 2 developers who do C++ and reverse engineering at the same time. CTO wants to move 2 current members to C++ programming only and hire 2 people specifically for reverse engineering part
• Sourcing locations for candidates: everywhere in the world. We will support you with the relocation and work permit
• Start date: flexible, can wait for the candidate who received the job offer up to 8-12 months to join


 

 

Job Requirements
• Language: English
• Working experience: binary code and malware analysis, IDA, security vulnerabilities, understanding data structures and algorithms involving dozens of functions all from nothing but binary
• Education: EU citizens/residence holders – any; others have to have a university degree (starting from Bachelor) so we can sponsor the work permit think-cell distinguishes itself from other Microsoft Office add-ins by having an intuitive user interface, smart algorithms that automate many tasks and, not least, deep integration into its Office host application. To achieve this deep integration, we use the public APIs offered by Office and Windows whenever we can, but unfortunately, they do not let us do everything we want to do. So, we add our own customization hooks into the Office and Windows binaries. When think-cell loads, it finds the code locations and installs its hooks. Instead of using fixed addresses, we find code locations using machine code patterns to be robust against minor changes. If an update to Office or Windows still breaks some of the patterns, think-cell will
automatically download and install any available version with updated patterns.


Finding ways to achieve a desired customization is a truly zen-like activity. It requires deep analytical skills, and the ability to juggle vast amounts of information in the head and quickly separate promising from less promising approaches.

 


About the recruitment process
• 3-hour reverse engineering test followed by a weekend homework on licensed IDA followed by an on-site 4 h interview with CTO.
• Candidates who did not pass the C++ test can apply for a reverse engineering position and vice versa

To apply, please send your updated CV in English or a link to your LinkedIn profile to fuad.vazirov@partnerstree.com** and include the position title in the subject field. We look forward to hearing from you!

 

 

* The list of requirements, duties and benefits is not exhaustive but is merely the most accurate list for the current job provided by the Employer.

 

** Please add this text to your e-mail

Upon sending my CV/resume and being aware of the legitimate purpose of processing my personal data – a necessity to apply for open job positions, not being forced by anyone and pursuant to my own free will, I hereby explicitly agree that my personal data indicated in my CV/resume are transferred to Partnerstree Ltd. Upon recalling my consent to Partnerstree Ltd to process my personal data, they shall be deleted from Partnerstree Ltd data processing systems and I acknowledge that in such case I simultaneously recall my application and refuse to be a candidate for Partnerstree Ltd recruitment.

bottom of page