Recently I had to work with my colleague on some software development tasks. What I learned from the pair-programming is to identify the areas of my weaknesses and the things where I had to stress harder to overcome my shortcomings. Not every developer is perfect, so it's a good idea to share your code with other developer, review others code, work on some task as a pair for sometime. Some developers are good in architecting applications, some are good in designing the front-end, some are good in databases, some are good in optimizing applications and so on. Pair programming can give you a chance to learn from others, to fill their gaps by your skills, and keep you going on the track. It can give options to brainstorm on certain areas while you do pair-programming. You can try and see you can benefit from pair-programming or not. I am sure you will.