Large-scale computer simulations of physical phenomena must be periodically corrected using additional sources of information, including snapshots of reality and model forecasts. The fusion of observations into computer models is known as data assimilation, and is extensively used in many areas such as atmospheric prediction, seismology, and energy applications. Assimilating multiple sources of information into computer simulations helps maintaining accurate representation of the evolution of the physical phenomena, and promotes realistic long-term prediction. Both observations and model forecasts are unavoidabl y contaminated with noise. These errors are not necessarily Gaussian and must be appropriately incorporated in the assimilation process. The assimilation algorithm, the design of the observational grid, and the data collection scheme all together control the performance of the simulation and the prediction system. Current assimilation algorithms used by national centers, such as the ensemble Kalman filter (EnKF), assume the associated errors are Gaussian for convenience and practical reasons. This strong assumption is ameliorated in many cases by applying ad-hoc techniques known as covariance inflation and localization. The parameters of these methods control the quality of the assimilation procedure and are still being tuned empirically in practice. Developing efficient and scalable assimilation algorithms capable of handling nonlinear and non-Gaussian settings is still an open research area. In this talk we cover three topics; the first is a new family of sampling algorith ms capable of assimilating observations into nonlinear model simulations in general non-Gaussian settings. The second topic is a new goal-oriented framework for optimal design of experiments for sensor placement suitable for PDE-constrained optimization and inverse problems. Finally, by leveraging ideas from optimal design of experiments, we present a new approach for adaptive tuning of the inflation and localization parameters for ensemble-based filters.