Your specialties are PHP, MySQL, OOP, web development, all that stuff.
How about:
- Graphic design (make better, more refined web pages)
- Information Technology (from a business college, infrastructure to support web dev).
- Quantitative Information Systems (maybe use databases and web for analytics, big data).
- Electrical Engineering with VHDL/Verilog for behavioral oriented hardware design with something that is similar to an object oriented programming language.
- Bioinformatics (someone else recommended this, and gave good rationale).
- Computer Science with emphasis on embedded systems (this is distinctly different than your web development).
Another thing to consider is that as much as we would like it to be about the learning, often college is about endurance. It can be about showing someone that you can learn what they tell you to learn. The reward is an endorsement that you know enough to be trusted with professional level work. It is a little bit like a club and as you know, many who have paid the dues are reluctant to share space with those who haven't.
Web development is one area where things are much more open for non-degree workers. If you can show, you can go. In other areas of programming, generally the bigger the company, or the bigger the pay, the more the demand for the degree. In some cases, the only degrees of interest will be computer science or electrical engineering. For some embedded systems teams, they may want computer systems engineering which is a mix of hardware and software training, and while they might take electrical engineers, there is a lot of proving before someone with computer science would be accepted. For simulation programming jobs, they may want someone with math and/or one of the sciences (biology, chemistry, physics, etc).
Many colleges permit majors and minors, so psychology major with a computer science minor might be OK, but I would check with a few departments to see if someone has done it because jobs for B.S. in psychology might be sparse. Some CS programs might offer specializations in UX / UI. My Google query came up with educational requirements for UI jobs:
- Bachelor’s or Master’s degree in Human Factors, Experimental/Cognitive Psychology, Industrial Engineering, HCI, Industrial Design or related field
- Bachelors degree in Human-Computer Interaction, Human Factors, Industrial Design, Psychology, Technical Communication, Library Science, Sociology, Anthropology, or related area is preferred.
- This position requires a Bachelor’s degree in CS or equivalent work experience and 3+ years practical development experience.
- Bachelor’s Degree required – preferably in HCI, Information Technology, Marketing or related degree.
- Master’s Degree in Computer Science or Engineering (or) Bachelor’s Degree plus work experience.
Whatever you choose, good luck.