What are the different kinds of Lightning routing nodes? I understand that there are end users at the edge of the network (typically with private channels) and routing nodes (with public channels) doing the routing of payments. What are the different kinds of Lightning routing nodes?
Alex Bosworth discusses different kinds of routing nodes he has observed on the network in this presentation at a Lightning Hack Day in March 2021. He classifies them as follows:

Ping Pong Routing Node (Bi-Directional Payments)
Liquidity Battery Routing Node (Slow Ping Pong Payments)
Inbound Sourcing Routing Node (Provide Liquidity to Drains)
Liquidity Trader Routing Node (Predict the Future, Provide Reliability)
Last Mile Routing Node (Connect Users to the Network)

A ping pong routing node stays balanced due to routing regular bidirectional payments and only requires operational costs. It avoids the fees required to rebalance channels. In reality, these are rare as there are at least delays between the bidirectional payments and hence periods where channels aren't balanced.
A liquidity battery routing node is more common as it routes bidirectional payments but encounters time delays and periods where channels aren't balanced. It needs sufficient capital to withstand these periods and avoid being drained. Due to the higher capital requirements they potentially have the opportunity to charge higher fees than ping pong routing nodes. These routing nodes also require monitoring of onchain fees to determine when it is affordable to use the chain to rebalance their channels.
An inbound sourcing routing node seeks opportunities to consistently provide liquidity to drains (ie exhausting their inbound capacity with regularity). Capital is only flowing in one direction and this routing node has to manage that and actively rebalance. However, this routing node does get to identify stable routing opportunities with medium fees where there is demand to route to the drains (e.g. merchants) and potentially buy channel capacity to serve periods of increased demand.
A liquidity trader routing node is the most opportunistic of routing nodes as it moves around the network opening channels or buying channel capacity in the short term to take advantage of information that isn't publicly available. It chases high routing fees and hence is information intensive as well as channel management intensive. If its information isn't accurate it risks making higher losses as the costs of channel opening and purchasing liquidity mount up.
A last mile routing node actively tries to connect end users to the Lightning Network rather than being one of the central nodes in the route. These routing nodes need to understand and monitor what the end users' needs are because otherwise they risk their capital being stuck in a channel that isn't being regularly utilized (i.e. no routing fees). It is also critical (even more so than for other routing nodes) that these routing nodes are online 24/7 as they may be the end users' only connection to the rest of the network.
(Being an effective routing node and generating profits from being a routing node is challenging and especially when starting out one should see it as experimentation rather than an investment with reliable returns. Do not experiment with more funds than you can afford to lose.)