This course introduces students to Offensive Java/Android Programming. Students will learn how to write an Android Application that gives a reverse shell from scratch. This course teaches you two different ways to write a reverse connection trojan for Android Platform - The first way is to write the trojan by packaging a netcat binary into an Android Application and the second way is by only using Java APIs. The code is tested against the latest versions of Android Operating System. You will learn interesting programming techniques. Having the ability to write your own payloads can also help you in bypassing anti virus softwares when needed. This is an intermediate to Advanced level course, but if you are a beginner with passion to learn Offensive Programming, you can still take this course. If you are a penetration tester or a security professional in general, this course is for you.