When deciding on a back-end framework, there are several factors to consider, such as the language and environment, performance and scalability, and features and functionality. If you have a certain programming language you are familiar with or prefer, you may want to use a framework that is based on that language, such as Django for Python or Ruby on Rails for Ruby. On the other hand, if you don't have a preference or experience with a certain language, you might opt for a framework that is based on a popular and versatile language, like Express for JavaScript or Laravel for PHP. Additionally, if you need to create an application that is fast, efficient, and scalable, you might want to use a framework that supports asynchronous, concurrent, and parallel programming like Node.js for JavaScript or Flask for Python. Or if you need to build an application that is stable, robust, and secure, you might opt for a framework that supports synchronous, sequential, and transactional programming such as Django for Python or Ruby on Rails for Ruby. Furthermore, if your application needs to be complex with lots of features and customization options then you might want to use a framework that offers plenty of built-in tools and libraries such as Django for Python or Ruby on Rails for Ruby. Alternatively, if your application needs to be simple with minimalistic and modular approach then Express for JavaScript or Sinatra for Ruby could be good choices.