After LCA2015 I've starting playing with Go (I blame Sven Dowideit). If you already use VIM-YouCompleteMe) then you should be right for most things Go. However I tinker in a few languages and you'll never guess that they have different rules around style and formatting of code.
Go is one out for me requiring settings unique to Go among the languages I tinker in. I made the below changes to my ~/.vimrc
to suit Go:
function! GoSettings()
set tabstop=7
set shiftwidth=7
set noexpandtab
endfunction
autocmd BufNewFile,BufFilePre,BufRead *.go :call GoSettings()
Now when I edit a file with the .go extension, my Vim session will be formatting the file correctly from the start.
You can also configure Vim to run gofmt but I preferred this approach.
Enjoy :-)