My belief is that the effectiveness of any piece of fiction begins and ends with its characters. A story with characters I'm interested in, can believe in, and feel and empathize with, will draw me in and carry me along and teach/transport me, almost regardless of plot or setting or genre.
The characters in my stories are not me; if they were, I wouldn't be too interested in them, as I don't find myself very interesting. One of the things I love most about writing (and reading) is taking vacations from myself while wearing the personas of people not me for the duration of my experience with the various interesting/unusual characters one encounters in stories.
Writing compelling characters is important for writers, and their readers, because the characters in a story are the lens through which the action happens and rendered relevant. I have three tricks that I use to develop characters for my stories that people love and hate and wonder about and write letters to and ask me questions.
1) Build characters out of people you know and feel strongly about
Each of us knows hundreds, even thousands, of people; the ones you can make into characters in your stories are the ones whose names or pictures evoke the strongest response in you. They could be people you went to school with, friends of your parents or children, people you've seen on the news or in movies or read about in books ... for some reason, they grabbed, and continue to grab your attention.
When I start planning a story (be it novel or novella or short story), I think about the protagonist, and other major/minor characters, trying to picture them and who they are. I'll write a list of people that compose each character, like a list of ingredients in descending order of their prevalence in the character for my story (see an example below, with the primary 'ingredient' circled).
This method continues to work for me,yielding great places to start with characters who inhabit my stories because, and only because, I have strong feelings for, and familiarity with, the people/ingredients who are the constituent elements in my characters.
2) Know much more about your characters than you need to
Once I have a picture in my mind of who the character is, I work backwards to fill in the gaps, getting to know the character even better by exploring their background. There are lots of lists of questions available on the internet and in books designed to help authors explore their characters' backgrounds; I use the one below (You can right-click to expand it ... please feel free to use/modify it if it helps):
The purpose of this is not to make an exhaustive list of details that I'll include in a story, but so that when I finally get around to writing the story, I have such a clear picture of the character(s) that I'm writing about someone I know.
3) Climb inside your characters for a ride, but let them drive
It takes me a while to get to know my characters, so I often take them out for a test-drive with a writing prompt or jump to a scene that I know they'll be easy to write in (and/or they'll have have fun with), in the story I'm planning.
By this point in our relationship, I can generally picture them quite easily, and hear their voice and tones when they engage in action or dialogue.
You know you're making progress when your characters surprise you. I always plan/map my stories out well ahead of time, but am forced to adjust the storyline in every one, when a major or minor character acts in ways that I hadn't envisioned when planning the story.
A great example of this in my writing is Barry, a minor character in my stories who died in my first novel, but surprised me by turning a cameo in my second novel into an ongoing and important character ... I was done with Barry, but he wasn't done with me.
If you have developed your characters properly, they should move beyond automatons, and become living and independent people in the world that you have built as a stage for your story ... when this happens, they'll surprise you (in a good way).
Good luck, have fun, and breathe life into your characters, then let them loose in the world!