softmax has the same number of elements in the input and output vector. The i and the j bit is because each output element doesnt depend just on the single corresponding input element, as per sigmoid, but on all the input elements. Because, without looking at all the input elements, how else could it normalize itself?  Therefore, each output element is a function of all the input elements, and hence hte gradients flow from each output element to all of the input elements.
I wrote this rambling kind of thing also at https://stats.stackexchange.com/questions/215521/how-to-find-derivative-of-softmax-function-for-the-purpose-of-gradient-descent/328095#328095 201