Re: What should I refer to become a firmware designer
Also perhaps go through some of the tutorials, such as those from Gooligum. There are good development platforms such as the Microchip Curiosity boards, but you can also do a lot just using the simulator in MPLABX. It helps to have a specific project in mind, that will do something you would like to have, such as a programmable thermostat or temperature controller. Such a project could use techniques for ADC, switches, PWM, LED display multiplexing, I2C, SPI, serial port, Bluetooth, USB, and IR control. Start simple and add functionality and features as you wish.
You might also start by creating a detailed project specification, as you might get as a software engineer (firmware designer) from a manager or customer, completing the design, and testing it with a written procedure. Having an EE background will help with circuit design, which should be closely synchronized with the firmware. Embedded programming is quite different from writing software for an OS like Windows or Linux.