algorithm experience