Use Altium Designer to do design and layout fully utilizing step files for the foot prints to not only prove footprint design, but also to allow for properly generated 3D view and step file output. Done Allot of Microchip designs using PIC10, PIC12, PIC18, & PIC24 using CCS's IDE. In process of adding STM32 with Cude X as an alternate to Microchip. Also do design reviews for maneuverability and can provide panelization requirements to help get a design to work properly in a manufacturing environment. Have done a number of reverse engineering jobs from bare boards, populated boards, gerbers, etc to bills of material, schematics, gerbers... Have allot of experience taking existing bill of material ( or populated board) to put together a updated bill of material of parts that are active and can be purchased.