"What are its potential weaknesses, and things that need to be focused on in order to make it as fast as possible?"
The one thing you might be worried about further down the road is that depending on how you create your models and connect them to one another, you may run into an issue where a single page generates many, many, many queries.
This is especially true if you're using a model that involves a generic relation.
Let's say you're using django-activity-stream to create a list of recent events (similar to Facebook's News Feed). django-activity-stream basically creates a list of generic relations. For each of these generic relations you're going to have to run a query to get information about that object. And, since it's generic (i.e. you're not writing a custom query for each kind of object), if that object has its own relations that you want to output, you might be looking at something like 40-100 queries for an activity feed with just 20-30 items.
Running 40-100 queries for a single request is not optimal behavior.
The good news is that Django is really just a bunch of classes and functions written in python. Almost anything you write in python can be added into Django, so you can always write your own functions or code to optimize a given request.
Choosing another framework is not going to avoid the problem of scalability; it's just going to present different difficulties in different areas.
Also, you can look into things like caching in order to speed up responses and prevent server load.