If you are a serious reader of science fiction, you have probably noticed the smugness of so-called mainline or literary readers. You know the type --- they don’t consider SF real literature. Among many deficiencies, they think SF is peopled with cardboard characters. This attitude irritated me until I realized there are differences.
Literary fiction is character driven. The characters resemble real people in realistic places. Literary fiction reveals character or develops character through a cumulative awareness that builds over the story or through a sudden personal awakening, usually near the conclusion of the novel. Literary fiction explores human complexity and strives to develop a deep understanding of the uniqueness of one or more main characters.
Much of science fiction, on the other hand is idea driven, let’s call it the big idea. For example the big idea in Unholy Domain is to explore what it means to be human. The main characters serve the big idea. They may be well-rounded, but they must fit into the idea of the story. While the literary character may spend pages dwelling on the relationship with his father, the SF character will spend little if any time dissecting that relationship. The focus is on the big idea and the plot must keep moving along.
Science fiction come in many subgenres --- cyberpunk, romance, post-apocalyptic, space opera, near future, soft and hard --- to name a few. All SF is a mix of setting, plot and character, but SF places more emphasis on setting and plot than does traditional literary fiction. The SF writer has more to deal with than the traditional writer, and can’t put all her marbles in the character basket.
That doesn’t mean that SF characters aren’t well-developed. They can be, but within and supporting the framework of the story. David Louis Edelman has an excellent article on Building Character(s) in DeepGenre
and provides a useful list of factors to consider. Read the comments, too.