Using a skillet or griddle, dry roast the whole coriander seeds and cumin seeds on medium heat until fragrant. Approximately 1 minute.
Pour into a small bowl and set aside to cool.
Grind to a fairly fine powder in a spice or coffee grinder.
Process the onion, cilantro, ginger, garlic, and green chili into a fine paste in a processor or blender.
Pour the mixture through a fine strainer and drain the excess liquid by pressing down on it with a spoon or paper towel.
Add the beef, the ground paste, and the rest of the spices in a large bowl.
Knead till all the ingredients are well mixed. Take at least 5 minutes to do this, as it helps keep the kebabs from breaking on the skewer.
Rest the mixture in the refrigerator for 4 hours or overnight.
Divide the ground beef mixture into 8-10 portions.
Form into smooth meatballs.
On a flat surface, using your fingers, roll the meatballs into sausage shapes about 4" long and 3/4" in diameter. Make sure they are of even thickness.
Gently slide a skewer through the middle. You can also form and shape the kebabs directly on the skewer. Make sure the meat is evenly distributed on the skewer.
Place on a rimmed baking sheet and refrigerate for 30 minutes or more until ready to use.
Heat a well-oiled cast iron or nonstick stove top grill on medium-high.
Grill the kebabs, rotating carefully, until evenly well-browned on the surface and cooked through. It takes about 10-15 minutes. (The kebabs can be cooked in several ways. See notes).
Garnish with lemon slices or wedges and a sprinkle of chopped cilantro.
Serve with rumali roti, naan, or flatbread with mint chutney and thinly sliced onions (red or yellow).