Job VC
Reverse Engineer
Reverse Engineer (Android / Windows)
About the Role
We’re looking for a highly skilled Reverse Engineer to analyze, understand, and modify complex software systems across
Android and Windows platforms
. You will work on low-level system components, proprietary protocols, and real-world production binaries—going far beyond basic static analysis.
This role requires deep technical expertise in
native code, system internals, and runtime behavior
, with a strong focus on practical reverse engineering and problem-solving.
Responsibilities
Reverse engineer Android and Windows applications (Java/Kotlin + native C/C++)
Analyze compiled binaries, obfuscated code, and packed applications
Perform dynamic instrumentation, tracing, and runtime analysis
Understand and modify system-level behavior (services, drivers, IPC, networking)
Reverse proprietary protocols and data formats
Identify security mechanisms, protections, and bypass techniques
Develop tooling, scripts, and automation for analysis workflows
Collaborate with engineering teams to integrate findings into products
Requirements
Core Skills
Strong experience with reverse engineering tools:
IDA Pro / Ghidra / Binary Ninja
Frida, LLDB, WinDbg, x64dbg
Solid understanding of:
Assembly (ARM, ARM64, x86/x64)
Native code (C/C++)
Memory management, calling conventions, binaries
Android
Deep understanding of Android internals:
ART / Dalvik runtime
Binder IPC
System services & HALs
Experience reversing APKs and native libraries (.so)
Familiarity with AOSP structure and system components
Windows
Understanding of Windows internals:
User-mode & kernel-mode architecture
Windows APIs, services, drivers
Experience analyzing PE binaries, DLLs, and system behavior
Nice to Have
Experience with iOS reversing (Objective-C / Swift, Mach-O)
Knowledge of anti-debugging / anti-tampering techniques
Experience with emulators, virtualization, or sandboxing
Cryptography and protocol analysis experience
Exploit development or vulnerability research background
What We Expect
Ability to work with incomplete information and figure things out independently
Strong debugging mindset and curiosity
Focus on
real-world results
, not just theoretical analysis
Clean and well-documented findings