My friend's parents are both from Colombia, but he was born here in the U.S., and I was wondering if there was a non-offensive term for somebody born of immigrants who is a native citizen.
As suggested in a comment "first-generation American" is the neutral expression you can use to refer to your friend who is born in the U.S.A. from Colombian parents. Note that the same expression can actually be used also to refer to their parents if they are resident in the United States:
The term first-generation, as it pertains to a person's nationality or residency in a country, can imply two possible meanings, depending on context:
1) A native-born citizen or resident of a country whose parents are foreign born: e.g., "first-generation" American,
2) A foreign born citizen or resident who has immigrated to a new country of residence: e.g., "first-generation" migrant.
This ambiguity is captured and corroborated in The Oxford English Dictionary's definition of "generation":
...*designating a member of the first (or second, etc.) generation of a family to do something or live somewhere; spec. designating a naturalized immigrant or a descendant of immigrant parents, esp. in the United States.... (OED definition of "generation," section 6b., emphasis added)*
In the United States, among demographers and other social scientists, the term "first generation" is used to refer to foreign-born residents (excluding those born abroad of American parents).
- Also the term "second-generation American" could apply, but the ambiguity, as in the case of first-generation" remains.
In my experience, in practice, the child of the immigrant is spoken of as "first generation," and the grandchild of the immigrant is spoken of as "second generation," and so on.
As it happens, I am a first generation American myself.
I won't provide a link to a definition, since it would just muddy the waters. Instead, here is an example blog, one among many, which use the term the way everyone I've ever spoken with about this does: http://thoughtcatalog.com/helina-daniel/2014/06/8-things-you-experience-as-a-first-generation-american/
Japanese Americans have an especially clear set of terms for how many generations removed from the old country a particular American of Japanese descent happens to be. According to the Wikipedia article on Japanese Americans, the generational names are as follows:
Issei (一世) The generation of people born in Japan who later immigrated to another country.
Nisei (二世) The generation of people born in North America, Latin America, Hawaii, or any country outside Japan either to at least one Issei or one non-immigrant Japanese parent.
Sansei (三世) The generation of people born in North America, Latin America, Hawaii, or any country outside Japan to at least one Nisei parent.
Yonsei (四世) The generation of people born in North America, Latin America, Hawaii, or any country outside Japan to at least one Sansei parent.
Gosei (五世) The generation of people born in North America, Latin America, Hawaii, or any country outside Japan to at least one Yonsei parent.
So for purposes of your question, if your friend's parents had been from Japan, rather than Colombia, your friend, being born in America, would be a Nisei.
As far as I know, however, most nationalities and ethnicities don't have such an elaborate naming system for immigrants to the United States (or elsewhere).
A term to avoid in describing a U.S.-born child of noncitizens is the pejorative anchor baby, which implies that the noncitizen mother gave birth to the child in the United States in order to claim residency rights through the child's automatic possession of U.S. citizenship by jus soli (birthright).