Pick your technique
There are many different hacks that will help you achieve a flawless liner. Some advice to start with the wing and then fill in the lash line, others tell you to start in the centre of your eye and work your way out. Practice definitely makes perfect when it comes to eyeliner, so try along and see what technique suits you best. Starting with a solid plan of campaign will make your life (or makeup) way easier.
Connect the dots
Still struggling to draw a straight line? Start with dots. Spread three dots over the upper lash line and start connecting them with your eyeliner. Working towards a clear point will make your lines much straighter. This works the same way for your wing as well: draw a dot where your flick should end and make sure it's the same on both sides. Then draw a line from your outer eye corner to the dot. Et voilà, it doesn't have to be hard.
Increase stability
To prevent shaky hands, you want to provide them with as much stability as possible. Therefore it's best to rest your elbows on a flat surface, such as the sink or a table. If there's nothing near to lean on, let your pinky rest on your cheek. Still shaking? Clench your toes. Yup, really. Sounds crazy, but this makes your hands steady and able to draw precise lines.
Consider your eye shape
Let the shape of your eyes decide how to draw your liner. For example, round eyes look best when you extend the lines beyond the eye corners. When you got hooded eyes, you might want to apply the liner as close to the lash line as possible. Whatever your eye shape may be, experiment with the different possibilities to learn what suits you best. That's how you find your signature wing.
Touch up
Add your eyeliner before doing the rest of your makeup. This way you can still correct stains or crooked lines with foundation or concealer. The latter will also allow you to make sure both sides look the same. Dip a (pointy) cotton bud in into makeup remover or micellair water for touch ups in between so you don't have to start your look from scratch after messing up.