You can have the use of position_dodge() argument in your geom_point. If you apply it directly on your code, it will position points in an horizontal manner, so the idea is to switch your x and y variables and use coord_flip to get it in the right way:
library(ggplot2)
ggplot(df, aes(y = as.factor(Year), x = Type))+ 
  geom_point(aes(color = Group, size = Value), alpha = 0.6, position = position_dodge(0.9)) +
  scale_color_manual(values = c("#0000FF", "#DAA520",  "#228B22","#E7B888")) +
  scale_size(range = c(1, 15)) +
  coord_flip()

Does it look what you are trying to achieve ? 
EDIT: Adding text in the middle of each points
To add labeling into each point, you can use geom_text and set the same position_dodge2 argument than for geom_point. 
NB: I use position_dodge2 instead of position_dodge and slightly change values of width because I found position_dodge2 more adapted to this case.
library(ggplot2)
ggplot(df, aes(y = as.factor(Year), x = Type))+ 
  geom_point(aes(color = Group, size = Value), alpha = 0.6, 
             position = position_dodge2(width  = 1)) +
  scale_color_manual(values = c("#0000FF", "#DAA520",  "#228B22","#E7B888")) +
  scale_size(range = c(3, 15)) +
  coord_flip()+
  geom_text(aes(label = Value, group = Group), 
            position = position_dodge2(width = 1))

Reproducible example
As you did not provide a reproducible example, I made one that is maybe not fully representative of your original dataset. If my answer is not working for you, you should consider providing a reproducible example (see here: How to make a great R reproducible example)
Group <- c(LETTERS[1:3],"A",LETTERS[1:2],LETTERS[1:3])
Year <- c(rep(1918,4),rep(2018,5))
Type <- c(rep("PP",3),"QQ","PP","PP","QQ","QQ","QQ")
Value <- sample(1:50,9)
df <- data.frame(Group, Year, Value, Type)
df$Type <- factor(df$Type, levels = c("PP","QQ"))