Preheat an outdoor grill or grill pan to medium-high (you may also preheat the oven broiler.)
Rub the corn with 2 tablespoons of the oil and season with salt and pepper. Put the corn directly on the grill grates (or put in a baking pan if using oven method) and cook until the kernels are slightly charred on all sides, turning every couple of minutes. Remove from the heat. Using a sharp knife, carefully cut the kernels off of the cobs and put in a mixing bowl. Add the avocado, lime juice, onions, bell peppers, jalapeno, cilantro, vinegar, and remaining 1 tablespoon of oil. Season with salt and pepper.
Grill (or broil) the shrimp until curled, pink and slightly charred on both sides, about 2 to 3 minutes total cooking time. Cook the mangos until grill marks appear, about 1 minute on each side.
Divide the mixed greens evenly among 4 plates. Drizzle the reserved mango marinade over the greens. Top with shrimp and mango skewers and a couple of spoonfuls of the roasted corn and avocado salsa. Garnish with some chopped cilantro serve with remaining salsa on the side.
Put wooden skewers in a pan of water for 30 minutes, so they don't burn on the grill.
Put the garlic on a cutting board and coarsely chop. Sprinkle with coarse salt and mash the garlic into a paste with the side of the knife. Put the garlic paste in a bowl. Add the cumin, oregano, paprika, black pepper, and cayenne. Mix to combine. Stir in the grapefruit juice, lime juice, and oil. Pour out about 1/3 of the marinade and put into a small bowl. Reserve for dressing the salad.
Thread the shrimp and mango onto separate skewers and put side-by-side in a baking dish. Pour the remaining marinade over the shrimp and mango; cover with plastic wrap. Put in the refrigerator and allow to marinate for about 30 minutes, flipping the skewers occasionally.