Current user in plugin returns NULL

Wait for the action plugins_loaded before you create the class instance. The pluggable functions are loaded at this time. From wp-settings.php:

/**
 * Fires once activated plugins have loaded.
 *
 * Pluggable functions are also available at this point in the loading order.
 *
 * @since 1.5.0
 */
do_action( 'plugins_loaded' );

I would even wait for wp_loaded in most cases. Then the global WP_Roles object has been set up, you know the theme and the locale – you will very likely not run again into a problem because of missing information.

Never just create class instances when your plugin’s main file is loaded. This always too early. Usually you want to check the request first to exclude your code from slowing down other plugins AJAX requests or WP’s comment/XML RPC/feed processing.

So your plugin’s main file could look like this:

add_action( 'wp_loaded', [ new Something, 'setup' ] );