IT業界のエンジニアは分類の仕方が色々ありますが、最も単純な分け方をするとシステムエンジニアとプログラマーに分けることが可能です。システムエンジニアはシステムの開発から運用、管理や監視に至るまで幅広く担うIT業界の花形として知られています。
上流工程を担当する部分が大半になり、客先との交渉なども担当することすらあるのが特徴です。職種も多岐にわたっていて専門分野としてネットワークやサーバー、インフラやWebなどが代表例として挙げられます。
一方、プログラマーはシステム開発における下流工程の担い手としてプログラミングをするのが仕事です。プラットフォームの選択から実際のシステムの構築やデバッグに至るまで一通りの下流工程をこなすのが特徴で、開発には欠かせない人材となっています。現場によってはカスタマイズなどの作業も担当し、プログラミングにおける全責任を負う立場なのがプログラマーです。
フリーランスエンジニアとしてはシステムエンジニアとプログラマーの両方に需要があります。システムエンジニアではインフラ系やWeb系の活躍が目立ち、トレンドによる影響を大きく受けるのが特徴です。トレンドの変化を追って専門分野を変えていくこともフリーランスで成功する上では欠かせません。
プログラマーは使用できる開発言語に応じてニーズが異なり、やはり世の中でよく活用されている言語を使えるプログラマーは案件を獲得しやすい傾向があります。