Senior Android Engineer Interview Questions

2,425 senior android engineer interview questions shared by candidates

We have a food delivery application that connects between a customer, a restaurant. When a user places an order, he can do online payment or cash on delivery. We have a payment module does contain all the payment related stuff, so the following code is the little snippet of the payment logic and there are errors, it can be logical, memory related, compiler issues... etc. here's the code: import java.util.Arrays; import java.util.Comparator; import java.util.Treeset; class PaymentException extends Exception { } class GatewayException extends PaymentException { } interface PaymentOptions { public void pay(E s) throws PaymentException; } abstract interface VirtualCard extends PaymentOptions { } abstract class PaymentType { } class Card extends PaymentType { } class SmartCard { } class HSBCPay implements VirtualCard { public void pay(SmartCard s) { } } abstract class Visa implements PaymentOptions { public abstract void pay(ElectronicCard s) { } } abstract class ApplePay implements PaymentOption { } class Wallet implements PaymentOption { public void pay(ElectronicCard i) throws Exception { } } class Mada implements PaymentOption { public void pay(PaymentType i) { } } class MasterCard implements PaymentOption { private void pay(SmartCard s) throws PaymentException { } public void pay(Card s) throws PaymentException { } } class ElectronicCard extends Card { public void pay(Card s) throws PaymentException { } public static void main(String[] args) { new ElectronicCard().go(); } void go(){ go2(new Card(), new ElectronicCard()); go2(( ) new Card(), new ElectronicCard()); } void go2(Card t1, ElectronicCard r1) { ElectronicCard r2 = (ElectronicCard) t1; Card t2 = (Card) r1; } } public class Test { public static synchronized void main(String[] args) throws InterruptedException { Thread thread = new Thread(); thread.start(); System.out.println("X"); thread.wait(1000); System.out.println("X"); } } class Innertest ( public static void main(String[] args) { String[] sa = ["Applepay", "Master", "Visa", "Wallet"]; Sorter s = new Sorter(); for(s2 : sa) System.out.println(s2 + " "); Arrays.sort(sa, s); System.out.println(); for(s2 : sa) System.out.println(s2 + " "); } } class Sorter implements Comparator { public int compare(String a, String b) { return b.compareTo(a); } } class TestDataStructure { public static void main(String[] args){ TreeSet i = new TreeSet(); TreeSet d = new TreeSet(); d.add(new PaymentAmount(1)); d.add(new PaymentAmount(2)); d.add(new PaymentAmount(1)); i.add(1); i.add(2); i.add(1); System.out.println(d.size() + " " + i.size()); } static class PaymentAmount { int size; PaymentAmount(int s) { size = s; } } }
avatar

Senior Android Developer

Interviewed at HungerStation

3.2
Dec 21, 2023

We have a food delivery application that connects between a customer, a restaurant. When a user places an order, he can do online payment or cash on delivery. We have a payment module does contain all the payment related stuff, so the following code is the little snippet of the payment logic and there are errors, it can be logical, memory related, compiler issues... etc. here's the code: import java.util.Arrays; import java.util.Comparator; import java.util.Treeset; class PaymentException extends Exception { } class GatewayException extends PaymentException { } interface PaymentOptions { public void pay(E s) throws PaymentException; } abstract interface VirtualCard extends PaymentOptions { } abstract class PaymentType { } class Card extends PaymentType { } class SmartCard { } class HSBCPay implements VirtualCard { public void pay(SmartCard s) { } } abstract class Visa implements PaymentOptions { public abstract void pay(ElectronicCard s) { } } abstract class ApplePay implements PaymentOption { } class Wallet implements PaymentOption { public void pay(ElectronicCard i) throws Exception { } } class Mada implements PaymentOption { public void pay(PaymentType i) { } } class MasterCard implements PaymentOption { private void pay(SmartCard s) throws PaymentException { } public void pay(Card s) throws PaymentException { } } class ElectronicCard extends Card { public void pay(Card s) throws PaymentException { } public static void main(String[] args) { new ElectronicCard().go(); } void go(){ go2(new Card(), new ElectronicCard()); go2(( ) new Card(), new ElectronicCard()); } void go2(Card t1, ElectronicCard r1) { ElectronicCard r2 = (ElectronicCard) t1; Card t2 = (Card) r1; } } public class Test { public static synchronized void main(String[] args) throws InterruptedException { Thread thread = new Thread(); thread.start(); System.out.println("X"); thread.wait(1000); System.out.println("X"); } } class Innertest ( public static void main(String[] args) { String[] sa = ["Applepay", "Master", "Visa", "Wallet"]; Sorter s = new Sorter(); for(s2 : sa) System.out.println(s2 + " "); Arrays.sort(sa, s); System.out.println(); for(s2 : sa) System.out.println(s2 + " "); } } class Sorter implements Comparator { public int compare(String a, String b) { return b.compareTo(a); } } class TestDataStructure { public static void main(String[] args){ TreeSet i = new TreeSet(); TreeSet d = new TreeSet(); d.add(new PaymentAmount(1)); d.add(new PaymentAmount(2)); d.add(new PaymentAmount(1)); i.add(1); i.add(2); i.add(1); System.out.println(d.size() + " " + i.size()); } static class PaymentAmount { int size; PaymentAmount(int s) { size = s; } } }

could not remember the aptitude questions. you have to guess as well as its very hard to complete all of them. coding test: one of them was to calculate number of ways you can walk up a flight of stairs for 2nd test you will be determining whether a car can get around a route.
avatar

Senior Android Developer

Interviewed at Gigster

3.5
Oct 10, 2023

could not remember the aptitude questions. you have to guess as well as its very hard to complete all of them. coding test: one of them was to calculate number of ways you can walk up a flight of stairs for 2nd test you will be determining whether a car can get around a route.

Viewing 281 - 290 interview questions

Glassdoor has 2,425 interview questions and reports from Senior android engineer interviews. Prepare for your interview. Get hired. Love your job.