In this paper, we describe an algorithm that reduces the computation of the (full)
p
p
-Selmer group of an elliptic curve
E
E
over a number field to standard number field computations such as determining the (
p
p
-torsion of) the
S
S
-class group and a basis of the
S
S
-units modulo
p
p
th powers for a suitable set
S
S
of primes. In particular, we give a result reducing this set
S
S
of ‘bad primes’ to a very small set, which in many cases only contains the primes above
p
p
. As of today, this provides a feasible algorithm for performing a full
3
3
-descent on an elliptic curve over
Q
\mathbb Q
, but the range of our algorithm will certainly be enlarged by future improvements in computational algebraic number theory. When the Galois module structure of
E
[
p
]
E[p]
is favorable, simplifications are possible and
p
p
-descents for larger
p
p
are accessible even today. To demonstrate how the method works, several worked examples are included.