Code security for software engineers