software firm challenges