I don’t think this is a question with a right answer. It really depends on what you are looking for and what your abilities are.
Generally speaking, entry level jobs in Japan for developers don’t exist because of how companies recruit entry level people (they hire them while they are still in university). So you have two options: get a non-entry level developer job or get a non-developer job.
As long as you are eligible for a working visa (university degree or Japanese spouse), getting a job teaching English is pretty trivial. If you’re someone who likes teaching, I’ve heard it can be a relatively good job, as long as you don’t do it for a long time (a couple years tops). This is probably the easiest way to get here.
The other option is to make yourself a non-entry level developer. Really there isn’t much difference between an entry-level and mid-level developer, so it comes down to your ability to market yourself. Don’t end the week with nothing is a good article on the topic. Coincidentally, the authour is also a resident of Japan. He worked for a big Japanese company in Nagoya, and his experience there sounded hellish, but is also quite extreme compared to that of international developers I know who work in Tokyo.
With regards to stability, traditional Japanese mega-corps offer the promise of life-time employment, so I guess they’re stable to a fault. The tradeoff is you’re expected to work your ass off for the first twenty to thirty years. Furthermore, I think there is going to be a breakdown in Japanese society in the next couple of decades, and these lifetime employers will start doing mass layoffs, so I think the long term stability they offer is an illusion. If I was a student and given an opportunity to intern at a company like this, I’d consider it for the culture experience, but it’s not somewhere I’d want to work long term. The big, traditional companies have research departments though where some interesting stuff does happen though.
At the opposite end of the spectrum is startups, where instability is a given. Ironically though, I think that makes it more stable in some ways: you know you might not have a job there in a couple of years and need to plan accordingly.
Pay really depends on how much the individual company values talented developers. At one extreme, you have companies who won’t treat developers different then anyone else, and use the traditional formula for calculating salary (your age x ¥10,000 per month). It’s my impression that multi-national companies tend to pay best, but this is often because you’re in a liaison type position between the Japanese office and the international development team, so you need to be a fluent Japanese speaker in addition to being a decent developer. Generally speaking, I’d say decent developer salaries range from ¥350,000 to ¥700,000 per month, with anything outside that being seen as exceptionally high or low paying, but this is just my impression and I don’t have any data to back it up.
No matter what the job is, I think there is opportunity for development. Say you work for a more traditional Japanese company - your technical skills might not advance so fast but your Japanese ability should improve quickly. On the other hand, when I worked for a Japanese startup with an international development team, my technical skills improved vastly, but my Japanese barely did at all, as I normally spoke English.
Ultimately there are bad and good points to any company, so it comes down to thinking about what you value most, and also just looking to make the most of any opportunity.