Jim is a Principal Consultant at Cigital with over 30 years of experience working for software development and consulting organizations. At Cigital, Jim heads up the Architecture Analysis practice with the mission to analyze the architecture and design of systems to identify flaws and provide our customers contextual guidance to remediate or mitigate those flaws. His previous experience includes development of compilers, real-time embedded software, satellite communication software, thick-client applications, and n-tier client-server systems.