To solve this optimization problem, we need to define variables and constraints based on the given information. Let's denote:

- $x$ as the number of LED signs made by team A per day.
- $y$ as the number of neon signs made by team B per day.

The objective is to maximize profit, with each LED sign contributing $1500 to profit and each neon sign contributing $1450.

Constraints:
1. Team A can make at most 3 LED signs a day: $x \leq 3$
2. Team B can make at most 4 neon signs a day: $y \leq 4$
3. The senior QC inspector can check at most 7 signs total a day: $x + y \leq 7$

The optimization problem can be formulated as:

Maximize: $1500x + 1450y$

Subject to:
- $x \leq 3$
- $y \leq 4$
- $x + y \leq 7$
- $x, y \geq 0$ (since the number of signs cannot be negative)

Now, let's translate this into Gurobi code in Python:

```python
from gurobipy import *

# Create a new model
m = Model("Sign_Making_Optimization")

# Define variables
x = m.addVar(lb=0, vtype=GRB.INTEGER, name="LED_Signs")
y = m.addVar(lb=0, vtype=GRB.INTEGER, name="Neon_Signs")

# Set the objective function
m.setObjective(1500*x + 1450*y, GRB.MAXIMIZE)

# Add constraints
m.addConstr(x <= 3, "Team_A_Constraint")
m.addConstr(y <= 4, "Team_B_Constraint")
m.addConstr(x + y <= 7, "QC_Inspector_Constraint")

# Optimize the model
m.optimize()

# Print the solution
if m.status == GRB.OPTIMAL:
    print("Optimal Solution:")
    print(f"LED Signs: {x.x}")
    print(f"Neon Signs: {y.x}")
    print(f"Maximum Profit: ${1500*x.x + 1450*y.x}")
else:
    print("No optimal solution found.")
```