To insert a node at a specific position in a doubly linked list, first create the new node. If the position is 1, insert at the head by updating the new node's next pointer to the current head and updating the head's prev pointer if it exists, then update the head pointer to the new node. Otherwise, start from the head and traverse to the node just before the desired position. If this node exists, adjust the new node's next pointer to the next node of the current node, and its prev pointer to the current node. Then update the current node's next pointer to the new node, and if the next node exists, update its prev pointer to the new node. This maintains the doubly linked list structure. If the position is beyond the list length, no insertion occurs. This process ensures the list remains connected correctly in both directions after insertion.