pg_get_serial_sequence(table_name, column_name) gets the name of the sequence that a serial, smallserial or bigserial column uses.
From the PostgreSQL documentation currval will:
Return the value most recently obtained by nextval for this sequence
  in the current session. (An error is reported if nextval has never
  been called for this sequence in this session.) Because this is
  returning a session-local value, it gives a predictable answer whether
  or not other sessions have executed nextval since the current session
  did.
Based on the above, noting the emphases, the answer to your question "If 10 people do the same thing, can they break the sequence of my database operations?" is no.
It's an easy one to test too. Take two instances of of pgAdmin or whatever client you prefer. 
On client 1:
CREATE TABLE foo (id BIGSERIAL PRIMARY KEY, some_column TEXT);
INSERT INTO foo(some_column) VALUES('a');
On client 2:
INSERT INTO foo(some_column) VALUES('b');
On client 1:
SELECT CURRVAL(PG_GET_SERIAL_SEQUENCE('foo','id')) AS inserted_id; -- it will return 1
On client 2:
SELECT CURRVAL(PG_GET_SERIAL_SEQUENCE('foo','id')) AS inserted_id; -- it will return 2