Claude commited on
Commit
52b35ff
·
unverified ·
1 Parent(s): e0d9805

Add AI chatbot for data visualization and table generation

Browse files

Builds a Streamlit chatbot that accepts CSV/Excel datasets and answers
natural language queries by generating pandas + Plotly code via Claude
claude-opus-4-6. Each response includes an explanation, a results table,
and an interactive chart rendered automatically.

Key components:
- app.py: Streamlit chat UI with sidebar upload and example queries
- utils/llm_handler.py: Claude API integration with adaptive thinking,
conversation history, and structured JSON response parsing
- utils/data_handler.py: Safe pandas code execution in restricted namespace
- utils/viz_handler.py: Safe Plotly code execution with fallback charts
- sample_data/employees.csv: 809-row employee salary dataset (2021–2024,
213 employees, 8 departments, 35 job titles)
- generate_sample_data.py: Script to regenerate the sample dataset

https://claude.ai/code/session_018NrotqUhoTDFbcMTpnK7e6

.env.example ADDED
@@ -0,0 +1 @@
 
 
1
+ ANTHROPIC_API_KEY=your_api_key_here
.gitignore ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ utils/__pycache__/
2
+ .env
3
+ __pycache__/
4
+ *.pyc
app.py ADDED
@@ -0,0 +1,224 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """
2
+ AI Data Chatbot — Ask questions about your dataset, get tables and charts.
3
+ Usage: streamlit run app.py
4
+ """
5
+ import os
6
+ import streamlit as st
7
+ import pandas as pd
8
+ from dotenv import load_dotenv
9
+
10
+ from utils.data_handler import (
11
+ load_dataframe,
12
+ get_schema_info,
13
+ get_sample_rows,
14
+ execute_pandas_code,
15
+ )
16
+ from utils.viz_handler import execute_viz_code, make_fallback_chart
17
+ from utils.llm_handler import LLMHandler
18
+
19
+ load_dotenv()
20
+
21
+ # ── Page config ───────────────────────────────────────────────────────────────
22
+ st.set_page_config(
23
+ page_title="AI Data Chatbot",
24
+ page_icon="📊",
25
+ layout="wide",
26
+ initial_sidebar_state="expanded",
27
+ )
28
+
29
+ st.markdown("""
30
+ <style>
31
+ .chat-header { font-size: 1.6rem; font-weight: 700; margin-bottom: 0.2rem; }
32
+ .stChatMessage { border-radius: 12px; }
33
+ div[data-testid="stSidebar"] { background-color: #f8f9fa; }
34
+ </style>
35
+ """, unsafe_allow_html=True)
36
+
37
+ # ── Session state ─────────────────────────────────────────────────────────────
38
+ if "messages" not in st.session_state:
39
+ st.session_state.messages = [] # {role, content, result_df?, fig?, error?}
40
+ if "df" not in st.session_state:
41
+ st.session_state.df = None
42
+ if "llm" not in st.session_state:
43
+ st.session_state.llm = LLMHandler()
44
+ if "schema_info" not in st.session_state:
45
+ st.session_state.schema_info = ""
46
+ if "sample_rows" not in st.session_state:
47
+ st.session_state.sample_rows = ""
48
+ if "data_source" not in st.session_state:
49
+ st.session_state.data_source = ""
50
+
51
+ # ── Sidebar ───────────────────────────────────────────────────────────────────
52
+ with st.sidebar:
53
+ st.markdown("## 📊 AI Data Chatbot")
54
+ st.markdown("Ask questions about your data in plain English.")
55
+ st.divider()
56
+
57
+ # Data source selection
58
+ st.markdown("### Data Source")
59
+ data_option = st.radio(
60
+ "Choose data:",
61
+ ["Use sample dataset (employees)", "Upload your own file"],
62
+ key="data_option",
63
+ )
64
+
65
+ if data_option == "Upload your own file":
66
+ uploaded = st.file_uploader(
67
+ "Upload CSV or Excel",
68
+ type=["csv", "xlsx", "xls"],
69
+ help="Max 200MB. Columns with year/date enable time comparisons.",
70
+ )
71
+ if uploaded:
72
+ df, err = load_dataframe(uploaded)
73
+ if err:
74
+ st.error(err)
75
+ elif df is not None:
76
+ st.session_state.df = df
77
+ st.session_state.schema_info = get_schema_info(df)
78
+ st.session_state.sample_rows = get_sample_rows(df)
79
+ st.session_state.data_source = uploaded.name
80
+ st.session_state.messages = []
81
+ st.session_state.llm.reset_conversation()
82
+ st.success(f"Loaded {len(df):,} rows × {len(df.columns)} columns")
83
+ else:
84
+ sample_path = "sample_data/employees.csv"
85
+ if os.path.exists(sample_path):
86
+ df = pd.read_csv(sample_path)
87
+ if st.session_state.data_source != "employees.csv":
88
+ st.session_state.df = df
89
+ st.session_state.schema_info = get_schema_info(df)
90
+ st.session_state.sample_rows = get_sample_rows(df)
91
+ st.session_state.data_source = "employees.csv"
92
+ st.session_state.messages = []
93
+ st.session_state.llm.reset_conversation()
94
+ st.success(f"Loaded {len(df):,} rows × {len(df.columns)} columns")
95
+ else:
96
+ st.error("Sample data not found. Run `python generate_sample_data.py` first.")
97
+
98
+ # Dataset preview
99
+ if st.session_state.df is not None:
100
+ st.divider()
101
+ st.markdown("### Dataset Preview")
102
+ with st.expander("Show schema"):
103
+ st.code(st.session_state.schema_info, language="text")
104
+ with st.expander("Show first 5 rows"):
105
+ st.dataframe(st.session_state.df.head(), use_container_width=True)
106
+
107
+ # Example queries
108
+ st.divider()
109
+ st.markdown("### Example Queries")
110
+ example_queries = [
111
+ "Compare 2022 vs 2023 highest paid employees by job title — show as chart and table",
112
+ "What is the average salary by department for each year?",
113
+ "Show the top 10 highest paid employees in 2023",
114
+ "Which department has the highest salary growth from 2021 to 2024?",
115
+ "Show salary distribution by location in 2023",
116
+ "How many employees are in each department?",
117
+ "Compare average salaries across job titles in Engineering in 2023",
118
+ ]
119
+ for q in example_queries:
120
+ if st.button(q, key=f"ex_{q[:20]}", use_container_width=True):
121
+ st.session_state.pending_query = q
122
+
123
+ # Reset
124
+ st.divider()
125
+ if st.button("Clear conversation", use_container_width=True):
126
+ st.session_state.messages = []
127
+ st.session_state.llm.reset_conversation()
128
+ st.rerun()
129
+
130
+ # ── Main chat area ─────────────────────────────────────────────────────────────
131
+ st.markdown('<div class="chat-header">📊 AI Data Chatbot</div>', unsafe_allow_html=True)
132
+ st.markdown("Ask questions about your data — get tables **and** charts automatically.")
133
+
134
+ if st.session_state.df is None:
135
+ st.info("Load a dataset from the sidebar to get started.")
136
+ st.stop()
137
+
138
+ # Render existing conversation
139
+ for msg in st.session_state.messages:
140
+ with st.chat_message(msg["role"]):
141
+ st.markdown(msg["content"])
142
+ if msg["role"] == "assistant":
143
+ if msg.get("error"):
144
+ st.error(msg["error"])
145
+ if msg.get("result_df") is not None:
146
+ st.markdown("**Results Table**")
147
+ st.dataframe(msg["result_df"], use_container_width=True)
148
+ if msg.get("fig") is not None:
149
+ st.plotly_chart(msg["fig"], use_container_width=True)
150
+
151
+
152
+ def run_query(user_input: str):
153
+ """Process a user query: call LLM, execute code, display results."""
154
+ if not user_input.strip():
155
+ return
156
+
157
+ # Add user message to history and display it
158
+ st.session_state.messages.append({"role": "user", "content": user_input})
159
+ with st.chat_message("user"):
160
+ st.markdown(user_input)
161
+
162
+ # Generate analysis via Claude
163
+ with st.chat_message("assistant"):
164
+ with st.spinner("Analyzing your data..."):
165
+ analysis = st.session_state.llm.generate_analysis(
166
+ question=user_input,
167
+ schema_info=st.session_state.schema_info,
168
+ sample_rows=st.session_state.sample_rows,
169
+ )
170
+
171
+ explanation = analysis.get("explanation", "")
172
+ pandas_code = analysis.get("pandas_code", "")
173
+ viz_code = analysis.get("viz_code")
174
+ viz_type = analysis.get("viz_type", "table_only")
175
+
176
+ # Show explanation
177
+ st.markdown(explanation)
178
+
179
+ result_df = None
180
+ fig = None
181
+ error_msg = None
182
+
183
+ # Execute pandas code
184
+ if pandas_code:
185
+ result_df, exec_error = execute_pandas_code(pandas_code, st.session_state.df)
186
+ if exec_error:
187
+ error_msg = f"Data processing error: {exec_error}"
188
+ st.error(error_msg)
189
+ elif result_df is not None:
190
+ st.markdown("**Results Table**")
191
+ st.dataframe(result_df, use_container_width=True)
192
+
193
+ # Execute viz code
194
+ if viz_code and viz_type not in ("table_only", "null", None):
195
+ fig, viz_error = execute_viz_code(viz_code, result_df)
196
+ if viz_error:
197
+ # Try fallback chart
198
+ fig = make_fallback_chart(result_df, title=user_input[:60])
199
+ if fig is None:
200
+ st.warning(f"Could not render chart: {viz_error}")
201
+ if fig is not None:
202
+ st.plotly_chart(fig, use_container_width=True)
203
+
204
+ # Store message in history
205
+ assistant_entry = {
206
+ "role": "assistant",
207
+ "content": explanation,
208
+ "result_df": result_df,
209
+ "fig": fig,
210
+ "error": error_msg,
211
+ }
212
+ st.session_state.messages.append(assistant_entry)
213
+
214
+
215
+ # Handle example query button clicks
216
+ if "pending_query" in st.session_state:
217
+ pending = st.session_state.pop("pending_query")
218
+ run_query(pending)
219
+ st.rerun()
220
+
221
+ # Chat input
222
+ if user_input := st.chat_input("Ask a question about your data..."):
223
+ run_query(user_input)
224
+ st.rerun()
generate_sample_data.py ADDED
@@ -0,0 +1,120 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Run this once to regenerate sample_data/employees.csv"""
2
+ import pandas as pd
3
+ import numpy as np
4
+ import random
5
+ from datetime import date, timedelta
6
+
7
+ random.seed(42)
8
+ np.random.seed(42)
9
+
10
+ departments = {
11
+ "Engineering": ["Junior Software Engineer", "Software Engineer", "Senior Software Engineer",
12
+ "Staff Engineer", "Principal Engineer", "Engineering Manager"],
13
+ "Data": ["Data Analyst", "Senior Data Analyst", "Data Scientist", "Senior Data Scientist",
14
+ "ML Engineer", "Head of Data"],
15
+ "Product": ["Product Manager", "Senior Product Manager", "Director of Product"],
16
+ "Marketing": ["Marketing Coordinator", "Marketing Manager", "Senior Marketing Manager",
17
+ "VP of Marketing"],
18
+ "Sales": ["Sales Representative", "Account Executive", "Senior Account Executive",
19
+ "Sales Manager", "VP of Sales"],
20
+ "Finance": ["Financial Analyst", "Senior Financial Analyst", "Finance Manager", "CFO"],
21
+ "HR": ["HR Coordinator", "HR Manager", "Senior HR Manager", "VP of People"],
22
+ "Operations": ["Operations Analyst", "Operations Manager", "Director of Operations"],
23
+ }
24
+
25
+ base_salaries = {
26
+ "Junior Software Engineer": 72000,
27
+ "Software Engineer": 105000,
28
+ "Senior Software Engineer": 140000,
29
+ "Staff Engineer": 175000,
30
+ "Principal Engineer": 210000,
31
+ "Engineering Manager": 185000,
32
+ "Data Analyst": 75000,
33
+ "Senior Data Analyst": 100000,
34
+ "Data Scientist": 120000,
35
+ "Senior Data Scientist": 155000,
36
+ "ML Engineer": 145000,
37
+ "Head of Data": 190000,
38
+ "Product Manager": 115000,
39
+ "Senior Product Manager": 145000,
40
+ "Director of Product": 185000,
41
+ "Marketing Coordinator": 55000,
42
+ "Marketing Manager": 85000,
43
+ "Senior Marketing Manager": 110000,
44
+ "VP of Marketing": 170000,
45
+ "Sales Representative": 60000,
46
+ "Account Executive": 90000,
47
+ "Senior Account Executive": 115000,
48
+ "Sales Manager": 130000,
49
+ "VP of Sales": 180000,
50
+ "Financial Analyst": 78000,
51
+ "Senior Financial Analyst": 105000,
52
+ "Finance Manager": 130000,
53
+ "CFO": 250000,
54
+ "HR Coordinator": 52000,
55
+ "HR Manager": 80000,
56
+ "Senior HR Manager": 105000,
57
+ "VP of People": 160000,
58
+ "Operations Analyst": 70000,
59
+ "Operations Manager": 100000,
60
+ "Director of Operations": 150000,
61
+ }
62
+
63
+ locations = ["New York", "San Francisco", "Austin", "Chicago", "Remote", "Seattle", "Boston"]
64
+ employment_types = ["Full-time", "Full-time", "Full-time", "Full-time", "Contract"]
65
+
66
+ first_names = ["Alice", "Bob", "Carlos", "Diana", "Ethan", "Fiona", "George", "Hannah",
67
+ "Ivan", "Julia", "Kevin", "Laura", "Michael", "Nina", "Omar", "Priya",
68
+ "Quinn", "Rachel", "Sam", "Tina", "Uma", "Victor", "Wendy", "Xavier",
69
+ "Yara", "Zach", "Amelia", "Ben", "Clara", "David", "Elena", "Frank",
70
+ "Grace", "Henry", "Iris", "James", "Kate", "Leo", "Maya", "Noah",
71
+ "Olivia", "Paul", "Qian", "Rosa", "Steve", "Tara", "Uri", "Vera",
72
+ "Will", "Xena"]
73
+
74
+ last_names = ["Smith", "Johnson", "Williams", "Brown", "Jones", "Garcia", "Miller", "Davis",
75
+ "Rodriguez", "Martinez", "Hernandez", "Lopez", "Gonzalez", "Wilson", "Anderson",
76
+ "Thomas", "Taylor", "Moore", "Jackson", "Martin", "Lee", "Perez", "Thompson",
77
+ "White", "Harris", "Sanchez", "Clark", "Ramirez", "Lewis", "Robinson",
78
+ "Walker", "Young", "Allen", "King", "Wright", "Scott", "Torres", "Nguyen",
79
+ "Hill", "Flores", "Green", "Adams", "Nelson", "Baker", "Hall", "Rivera",
80
+ "Campbell", "Mitchell", "Carter", "Roberts"]
81
+
82
+ rows = []
83
+ emp_id = 1001
84
+
85
+ for dept, titles in departments.items():
86
+ for title in titles:
87
+ n_employees = random.randint(3, 8)
88
+ for _ in range(n_employees):
89
+ first = random.choice(first_names)
90
+ last = random.choice(last_names)
91
+ hire_year = random.randint(2018, 2022)
92
+ hire_date = date(hire_year, random.randint(1, 12), random.randint(1, 28))
93
+ location = random.choice(locations)
94
+ emp_type = random.choice(employment_types)
95
+ base = base_salaries[title]
96
+
97
+ for year in [2021, 2022, 2023, 2024]:
98
+ if year >= hire_year:
99
+ annual_raise = random.uniform(0.03, 0.08)
100
+ years_exp = year - hire_year
101
+ salary = int(base * (1 + annual_raise) ** years_exp * random.uniform(0.92, 1.12))
102
+ rows.append({
103
+ "employee_id": emp_id,
104
+ "first_name": first,
105
+ "last_name": last,
106
+ "full_name": f"{first} {last}",
107
+ "department": dept,
108
+ "job_title": title,
109
+ "salary": salary,
110
+ "year": year,
111
+ "hire_date": hire_date.isoformat(),
112
+ "location": location,
113
+ "employment_type": emp_type,
114
+ })
115
+ emp_id += 1
116
+
117
+ df = pd.DataFrame(rows)
118
+ df.to_csv("sample_data/employees.csv", index=False)
119
+ print(f"Generated {len(df)} rows, {df['employee_id'].nunique()} unique employees")
120
+ print(df.head())
requirements.txt ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ anthropic>=0.40.0
2
+ streamlit>=1.40.0
3
+ pandas>=2.0.0
4
+ numpy>=1.24.0
5
+ plotly>=5.18.0
6
+ openpyxl>=3.1.0
7
+ python-dotenv>=1.0.0
sample_data/employees.csv ADDED
@@ -0,0 +1,810 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ employee_id,first_name,last_name,full_name,department,job_title,salary,year,hire_date,location,employment_type
2
+ 1001,Hannah,Johnson,Hannah Johnson,Engineering,Junior Software Engineer,84135,2021,2020-04-08,San Francisco,Full-time
3
+ 1001,Hannah,Johnson,Hannah Johnson,Engineering,Junior Software Engineer,77368,2022,2020-04-08,San Francisco,Full-time
4
+ 1001,Hannah,Johnson,Hannah Johnson,Engineering,Junior Software Engineer,76152,2023,2020-04-08,San Francisco,Full-time
5
+ 1001,Hannah,Johnson,Hannah Johnson,Engineering,Junior Software Engineer,82616,2024,2020-04-08,San Francisco,Full-time
6
+ 1002,Michael,Rivera,Michael Rivera,Engineering,Junior Software Engineer,78757,2022,2022-07-08,Chicago,Contract
7
+ 1002,Michael,Rivera,Michael Rivera,Engineering,Junior Software Engineer,73195,2023,2022-07-08,Chicago,Contract
8
+ 1002,Michael,Rivera,Michael Rivera,Engineering,Junior Software Engineer,77607,2024,2022-07-08,Chicago,Contract
9
+ 1003,Nina,Carter,Nina Carter,Engineering,Junior Software Engineer,74606,2021,2020-02-03,Chicago,Full-time
10
+ 1003,Nina,Carter,Nina Carter,Engineering,Junior Software Engineer,72771,2022,2020-02-03,Chicago,Full-time
11
+ 1003,Nina,Carter,Nina Carter,Engineering,Junior Software Engineer,79432,2023,2020-02-03,Chicago,Full-time
12
+ 1003,Nina,Carter,Nina Carter,Engineering,Junior Software Engineer,90350,2024,2020-02-03,Chicago,Full-time
13
+ 1004,Sam,Green,Sam Green,Engineering,Junior Software Engineer,69521,2022,2022-06-19,San Francisco,Full-time
14
+ 1004,Sam,Green,Sam Green,Engineering,Junior Software Engineer,70385,2023,2022-06-19,San Francisco,Full-time
15
+ 1004,Sam,Green,Sam Green,Engineering,Junior Software Engineer,73449,2024,2022-06-19,San Francisco,Full-time
16
+ 1005,Rachel,Robinson,Rachel Robinson,Engineering,Junior Software Engineer,81194,2021,2020-03-12,Austin,Full-time
17
+ 1005,Rachel,Robinson,Rachel Robinson,Engineering,Junior Software Engineer,76179,2022,2020-03-12,Austin,Full-time
18
+ 1005,Rachel,Robinson,Rachel Robinson,Engineering,Junior Software Engineer,88490,2023,2020-03-12,Austin,Full-time
19
+ 1005,Rachel,Robinson,Rachel Robinson,Engineering,Junior Software Engineer,86015,2024,2020-03-12,Austin,Full-time
20
+ 1006,Rachel,Green,Rachel Green,Engineering,Junior Software Engineer,66702,2022,2022-04-22,Austin,Full-time
21
+ 1006,Rachel,Green,Rachel Green,Engineering,Junior Software Engineer,73303,2023,2022-04-22,Austin,Full-time
22
+ 1006,Rachel,Green,Rachel Green,Engineering,Junior Software Engineer,86422,2024,2022-04-22,Austin,Full-time
23
+ 1007,Tara,Lee,Tara Lee,Engineering,Junior Software Engineer,73414,2021,2019-11-16,Chicago,Full-time
24
+ 1007,Tara,Lee,Tara Lee,Engineering,Junior Software Engineer,89957,2022,2019-11-16,Chicago,Full-time
25
+ 1007,Tara,Lee,Tara Lee,Engineering,Junior Software Engineer,93977,2023,2019-11-16,Chicago,Full-time
26
+ 1007,Tara,Lee,Tara Lee,Engineering,Junior Software Engineer,95249,2024,2019-11-16,Chicago,Full-time
27
+ 1008,Ivan,Allen,Ivan Allen,Engineering,Junior Software Engineer,68543,2021,2021-02-25,New York,Full-time
28
+ 1008,Ivan,Allen,Ivan Allen,Engineering,Junior Software Engineer,79619,2022,2021-02-25,New York,Full-time
29
+ 1008,Ivan,Allen,Ivan Allen,Engineering,Junior Software Engineer,82370,2023,2021-02-25,New York,Full-time
30
+ 1008,Ivan,Allen,Ivan Allen,Engineering,Junior Software Engineer,81660,2024,2021-02-25,New York,Full-time
31
+ 1009,Alice,Baker,Alice Baker,Engineering,Software Engineer,126531,2021,2018-11-18,Boston,Full-time
32
+ 1009,Alice,Baker,Alice Baker,Engineering,Software Engineer,119009,2022,2018-11-18,Boston,Full-time
33
+ 1009,Alice,Baker,Alice Baker,Engineering,Software Engineer,129667,2023,2018-11-18,Boston,Full-time
34
+ 1009,Alice,Baker,Alice Baker,Engineering,Software Engineer,171682,2024,2018-11-18,Boston,Full-time
35
+ 1010,Will,Lopez,Will Lopez,Engineering,Software Engineer,107260,2022,2022-02-28,Seattle,Full-time
36
+ 1010,Will,Lopez,Will Lopez,Engineering,Software Engineer,108624,2023,2022-02-28,Seattle,Full-time
37
+ 1010,Will,Lopez,Will Lopez,Engineering,Software Engineer,125674,2024,2022-02-28,Seattle,Full-time
38
+ 1011,Henry,Smith,Henry Smith,Engineering,Software Engineer,115053,2022,2022-06-16,New York,Full-time
39
+ 1011,Henry,Smith,Henry Smith,Engineering,Software Engineer,110435,2023,2022-06-16,New York,Full-time
40
+ 1011,Henry,Smith,Henry Smith,Engineering,Software Engineer,122731,2024,2022-06-16,New York,Full-time
41
+ 1012,Fiona,Garcia,Fiona Garcia,Engineering,Software Engineer,106580,2021,2021-02-25,Remote,Full-time
42
+ 1012,Fiona,Garcia,Fiona Garcia,Engineering,Software Engineer,108039,2022,2021-02-25,Remote,Full-time
43
+ 1012,Fiona,Garcia,Fiona Garcia,Engineering,Software Engineer,121589,2023,2021-02-25,Remote,Full-time
44
+ 1012,Fiona,Garcia,Fiona Garcia,Engineering,Software Engineer,121607,2024,2021-02-25,Remote,Full-time
45
+ 1013,Uri,Hall,Uri Hall,Engineering,Software Engineer,118914,2021,2019-12-10,Chicago,Full-time
46
+ 1013,Uri,Hall,Uri Hall,Engineering,Software Engineer,112676,2022,2019-12-10,Chicago,Full-time
47
+ 1013,Uri,Hall,Uri Hall,Engineering,Software Engineer,130879,2023,2019-12-10,Chicago,Full-time
48
+ 1013,Uri,Hall,Uri Hall,Engineering,Software Engineer,124049,2024,2019-12-10,Chicago,Full-time
49
+ 1014,Ethan,Rivera,Ethan Rivera,Engineering,Software Engineer,112168,2021,2018-04-03,New York,Full-time
50
+ 1014,Ethan,Rivera,Ethan Rivera,Engineering,Software Engineer,129304,2022,2018-04-03,New York,Full-time
51
+ 1014,Ethan,Rivera,Ethan Rivera,Engineering,Software Engineer,139144,2023,2018-04-03,New York,Full-time
52
+ 1014,Ethan,Rivera,Ethan Rivera,Engineering,Software Engineer,149875,2024,2018-04-03,New York,Full-time
53
+ 1015,Elena,Clark,Elena Clark,Engineering,Software Engineer,115515,2021,2019-02-04,Seattle,Full-time
54
+ 1015,Elena,Clark,Elena Clark,Engineering,Software Engineer,120807,2022,2019-02-04,Seattle,Full-time
55
+ 1015,Elena,Clark,Elena Clark,Engineering,Software Engineer,140494,2023,2019-02-04,Seattle,Full-time
56
+ 1015,Elena,Clark,Elena Clark,Engineering,Software Engineer,131633,2024,2019-02-04,Seattle,Full-time
57
+ 1016,Priya,Gonzalez,Priya Gonzalez,Engineering,Senior Software Engineer,153077,2021,2019-09-15,San Francisco,Full-time
58
+ 1016,Priya,Gonzalez,Priya Gonzalez,Engineering,Senior Software Engineer,162051,2022,2019-09-15,San Francisco,Full-time
59
+ 1016,Priya,Gonzalez,Priya Gonzalez,Engineering,Senior Software Engineer,200546,2023,2019-09-15,San Francisco,Full-time
60
+ 1016,Priya,Gonzalez,Priya Gonzalez,Engineering,Senior Software Engineer,174573,2024,2019-09-15,San Francisco,Full-time
61
+ 1017,Iris,Smith,Iris Smith,Engineering,Senior Software Engineer,179195,2021,2018-04-06,Chicago,Full-time
62
+ 1017,Iris,Smith,Iris Smith,Engineering,Senior Software Engineer,178245,2022,2018-04-06,Chicago,Full-time
63
+ 1017,Iris,Smith,Iris Smith,Engineering,Senior Software Engineer,162072,2023,2018-04-06,Chicago,Full-time
64
+ 1017,Iris,Smith,Iris Smith,Engineering,Senior Software Engineer,234432,2024,2018-04-06,Chicago,Full-time
65
+ 1018,Sam,Ramirez,Sam Ramirez,Engineering,Senior Software Engineer,134895,2022,2022-11-23,Chicago,Full-time
66
+ 1018,Sam,Ramirez,Sam Ramirez,Engineering,Senior Software Engineer,154319,2023,2022-11-23,Chicago,Full-time
67
+ 1018,Sam,Ramirez,Sam Ramirez,Engineering,Senior Software Engineer,146824,2024,2022-11-23,Chicago,Full-time
68
+ 1019,Leo,Walker,Leo Walker,Engineering,Staff Engineer,167503,2022,2022-09-06,New York,Contract
69
+ 1019,Leo,Walker,Leo Walker,Engineering,Staff Engineer,195664,2023,2022-09-06,New York,Contract
70
+ 1019,Leo,Walker,Leo Walker,Engineering,Staff Engineer,179281,2024,2022-09-06,New York,Contract
71
+ 1020,Kate,Thomas,Kate Thomas,Engineering,Staff Engineer,181428,2022,2022-10-02,Remote,Full-time
72
+ 1020,Kate,Thomas,Kate Thomas,Engineering,Staff Engineer,204589,2023,2022-10-02,Remote,Full-time
73
+ 1020,Kate,Thomas,Kate Thomas,Engineering,Staff Engineer,201332,2024,2022-10-02,Remote,Full-time
74
+ 1021,Priya,Taylor,Priya Taylor,Engineering,Staff Engineer,193515,2021,2021-03-22,Seattle,Full-time
75
+ 1021,Priya,Taylor,Priya Taylor,Engineering,Staff Engineer,173713,2022,2021-03-22,Seattle,Full-time
76
+ 1021,Priya,Taylor,Priya Taylor,Engineering,Staff Engineer,203445,2023,2021-03-22,Seattle,Full-time
77
+ 1021,Priya,Taylor,Priya Taylor,Engineering,Staff Engineer,199366,2024,2021-03-22,Seattle,Full-time
78
+ 1022,Quinn,Rodriguez,Quinn Rodriguez,Engineering,Principal Engineer,236863,2021,2020-02-08,Austin,Full-time
79
+ 1022,Quinn,Rodriguez,Quinn Rodriguez,Engineering,Principal Engineer,248353,2022,2020-02-08,Austin,Full-time
80
+ 1022,Quinn,Rodriguez,Quinn Rodriguez,Engineering,Principal Engineer,277484,2023,2020-02-08,Austin,Full-time
81
+ 1022,Quinn,Rodriguez,Quinn Rodriguez,Engineering,Principal Engineer,256463,2024,2020-02-08,Austin,Full-time
82
+ 1023,Tina,Nelson,Tina Nelson,Engineering,Principal Engineer,242706,2021,2018-03-09,New York,Full-time
83
+ 1023,Tina,Nelson,Tina Nelson,Engineering,Principal Engineer,240103,2022,2018-03-09,New York,Full-time
84
+ 1023,Tina,Nelson,Tina Nelson,Engineering,Principal Engineer,279596,2023,2018-03-09,New York,Full-time
85
+ 1023,Tina,Nelson,Tina Nelson,Engineering,Principal Engineer,326600,2024,2018-03-09,New York,Full-time
86
+ 1024,Quinn,Brown,Quinn Brown,Engineering,Principal Engineer,227880,2021,2018-11-14,Boston,Full-time
87
+ 1024,Quinn,Brown,Quinn Brown,Engineering,Principal Engineer,270528,2022,2018-11-14,Boston,Full-time
88
+ 1024,Quinn,Brown,Quinn Brown,Engineering,Principal Engineer,255264,2023,2018-11-14,Boston,Full-time
89
+ 1024,Quinn,Brown,Quinn Brown,Engineering,Principal Engineer,316786,2024,2018-11-14,Boston,Full-time
90
+ 1025,Hannah,Jones,Hannah Jones,Engineering,Principal Engineer,223698,2021,2019-09-02,Boston,Full-time
91
+ 1025,Hannah,Jones,Hannah Jones,Engineering,Principal Engineer,229469,2022,2019-09-02,Boston,Full-time
92
+ 1025,Hannah,Jones,Hannah Jones,Engineering,Principal Engineer,302609,2023,2019-09-02,Boston,Full-time
93
+ 1025,Hannah,Jones,Hannah Jones,Engineering,Principal Engineer,328546,2024,2019-09-02,Boston,Full-time
94
+ 1026,Nina,Baker,Nina Baker,Engineering,Principal Engineer,242632,2021,2019-11-04,Austin,Contract
95
+ 1026,Nina,Baker,Nina Baker,Engineering,Principal Engineer,238531,2022,2019-11-04,Austin,Contract
96
+ 1026,Nina,Baker,Nina Baker,Engineering,Principal Engineer,308215,2023,2019-11-04,Austin,Contract
97
+ 1026,Nina,Baker,Nina Baker,Engineering,Principal Engineer,332073,2024,2019-11-04,Austin,Contract
98
+ 1027,Amelia,Johnson,Amelia Johnson,Engineering,Principal Engineer,262798,2021,2019-12-11,Boston,Full-time
99
+ 1027,Amelia,Johnson,Amelia Johnson,Engineering,Principal Engineer,250783,2022,2019-12-11,Boston,Full-time
100
+ 1027,Amelia,Johnson,Amelia Johnson,Engineering,Principal Engineer,258585,2023,2019-12-11,Boston,Full-time
101
+ 1027,Amelia,Johnson,Amelia Johnson,Engineering,Principal Engineer,327008,2024,2019-12-11,Boston,Full-time
102
+ 1028,Omar,Gonzalez,Omar Gonzalez,Engineering,Principal Engineer,220921,2021,2021-06-10,Boston,Full-time
103
+ 1028,Omar,Gonzalez,Omar Gonzalez,Engineering,Principal Engineer,215130,2022,2021-06-10,Boston,Full-time
104
+ 1028,Omar,Gonzalez,Omar Gonzalez,Engineering,Principal Engineer,241040,2023,2021-06-10,Boston,Full-time
105
+ 1028,Omar,Gonzalez,Omar Gonzalez,Engineering,Principal Engineer,246690,2024,2021-06-10,Boston,Full-time
106
+ 1029,Iris,Perez,Iris Perez,Engineering,Engineering Manager,225598,2021,2018-02-09,San Francisco,Contract
107
+ 1029,Iris,Perez,Iris Perez,Engineering,Engineering Manager,214106,2022,2018-02-09,San Francisco,Contract
108
+ 1029,Iris,Perez,Iris Perez,Engineering,Engineering Manager,250763,2023,2018-02-09,San Francisco,Contract
109
+ 1029,Iris,Perez,Iris Perez,Engineering,Engineering Manager,268745,2024,2018-02-09,San Francisco,Contract
110
+ 1030,Yara,Torres,Yara Torres,Engineering,Engineering Manager,216932,2021,2019-05-02,Seattle,Full-time
111
+ 1030,Yara,Torres,Yara Torres,Engineering,Engineering Manager,232378,2022,2019-05-02,Seattle,Full-time
112
+ 1030,Yara,Torres,Yara Torres,Engineering,Engineering Manager,252860,2023,2019-05-02,Seattle,Full-time
113
+ 1030,Yara,Torres,Yara Torres,Engineering,Engineering Manager,218655,2024,2019-05-02,Seattle,Full-time
114
+ 1031,Qian,Perez,Qian Perez,Engineering,Engineering Manager,181311,2022,2022-06-22,Boston,Full-time
115
+ 1031,Qian,Perez,Qian Perez,Engineering,Engineering Manager,193735,2023,2022-06-22,Boston,Full-time
116
+ 1031,Qian,Perez,Qian Perez,Engineering,Engineering Manager,199751,2024,2022-06-22,Boston,Full-time
117
+ 1032,Ivan,Gonzalez,Ivan Gonzalez,Engineering,Engineering Manager,181335,2021,2021-11-13,Seattle,Full-time
118
+ 1032,Ivan,Gonzalez,Ivan Gonzalez,Engineering,Engineering Manager,179984,2022,2021-11-13,Seattle,Full-time
119
+ 1032,Ivan,Gonzalez,Ivan Gonzalez,Engineering,Engineering Manager,202977,2023,2021-11-13,Seattle,Full-time
120
+ 1032,Ivan,Gonzalez,Ivan Gonzalez,Engineering,Engineering Manager,230906,2024,2021-11-13,Seattle,Full-time
121
+ 1033,David,Lewis,David Lewis,Engineering,Engineering Manager,205713,2021,2021-11-07,Remote,Full-time
122
+ 1033,David,Lewis,David Lewis,Engineering,Engineering Manager,207574,2022,2021-11-07,Remote,Full-time
123
+ 1033,David,Lewis,David Lewis,Engineering,Engineering Manager,212355,2023,2021-11-07,Remote,Full-time
124
+ 1033,David,Lewis,David Lewis,Engineering,Engineering Manager,207390,2024,2021-11-07,Remote,Full-time
125
+ 1034,Will,Thomas,Will Thomas,Engineering,Engineering Manager,184855,2021,2020-04-26,San Francisco,Full-time
126
+ 1034,Will,Thomas,Will Thomas,Engineering,Engineering Manager,223902,2022,2020-04-26,San Francisco,Full-time
127
+ 1034,Will,Thomas,Will Thomas,Engineering,Engineering Manager,204896,2023,2020-04-26,San Francisco,Full-time
128
+ 1034,Will,Thomas,Will Thomas,Engineering,Engineering Manager,225216,2024,2020-04-26,San Francisco,Full-time
129
+ 1035,Steve,Harris,Steve Harris,Engineering,Engineering Manager,202036,2021,2021-07-08,San Francisco,Full-time
130
+ 1035,Steve,Harris,Steve Harris,Engineering,Engineering Manager,213782,2022,2021-07-08,San Francisco,Full-time
131
+ 1035,Steve,Harris,Steve Harris,Engineering,Engineering Manager,216660,2023,2021-07-08,San Francisco,Full-time
132
+ 1035,Steve,Harris,Steve Harris,Engineering,Engineering Manager,226225,2024,2021-07-08,San Francisco,Full-time
133
+ 1036,James,Thomas,James Thomas,Engineering,Engineering Manager,248607,2021,2018-08-05,Boston,Full-time
134
+ 1036,James,Thomas,James Thomas,Engineering,Engineering Manager,259029,2022,2018-08-05,Boston,Full-time
135
+ 1036,James,Thomas,James Thomas,Engineering,Engineering Manager,276335,2023,2018-08-05,Boston,Full-time
136
+ 1036,James,Thomas,James Thomas,Engineering,Engineering Manager,277097,2024,2018-08-05,Boston,Full-time
137
+ 1037,Clara,Hernandez,Clara Hernandez,Data,Data Analyst,73159,2021,2021-08-09,Boston,Full-time
138
+ 1037,Clara,Hernandez,Clara Hernandez,Data,Data Analyst,81522,2022,2021-08-09,Boston,Full-time
139
+ 1037,Clara,Hernandez,Clara Hernandez,Data,Data Analyst,82075,2023,2021-08-09,Boston,Full-time
140
+ 1037,Clara,Hernandez,Clara Hernandez,Data,Data Analyst,87764,2024,2021-08-09,Boston,Full-time
141
+ 1038,Victor,Lee,Victor Lee,Data,Data Analyst,71292,2022,2022-02-05,San Francisco,Full-time
142
+ 1038,Victor,Lee,Victor Lee,Data,Data Analyst,78284,2023,2022-02-05,San Francisco,Full-time
143
+ 1038,Victor,Lee,Victor Lee,Data,Data Analyst,83227,2024,2022-02-05,San Francisco,Full-time
144
+ 1039,Diana,Wilson,Diana Wilson,Data,Data Analyst,80483,2021,2021-07-25,Remote,Full-time
145
+ 1039,Diana,Wilson,Diana Wilson,Data,Data Analyst,72475,2022,2021-07-25,Remote,Full-time
146
+ 1039,Diana,Wilson,Diana Wilson,Data,Data Analyst,88126,2023,2021-07-25,Remote,Full-time
147
+ 1039,Diana,Wilson,Diana Wilson,Data,Data Analyst,102814,2024,2021-07-25,Remote,Full-time
148
+ 1040,Amelia,Wright,Amelia Wright,Data,Data Analyst,76284,2022,2022-10-08,Chicago,Full-time
149
+ 1040,Amelia,Wright,Amelia Wright,Data,Data Analyst,82940,2023,2022-10-08,Chicago,Full-time
150
+ 1040,Amelia,Wright,Amelia Wright,Data,Data Analyst,91418,2024,2022-10-08,Chicago,Full-time
151
+ 1041,David,Rodriguez,David Rodriguez,Data,Data Analyst,69406,2022,2022-09-01,Chicago,Contract
152
+ 1041,David,Rodriguez,David Rodriguez,Data,Data Analyst,75449,2023,2022-09-01,Chicago,Contract
153
+ 1041,David,Rodriguez,David Rodriguez,Data,Data Analyst,77356,2024,2022-09-01,Chicago,Contract
154
+ 1042,Yara,Lee,Yara Lee,Data,Data Analyst,90741,2021,2019-08-11,Austin,Full-time
155
+ 1042,Yara,Lee,Yara Lee,Data,Data Analyst,94664,2022,2019-08-11,Austin,Full-time
156
+ 1042,Yara,Lee,Yara Lee,Data,Data Analyst,98839,2023,2019-08-11,Austin,Full-time
157
+ 1042,Yara,Lee,Yara Lee,Data,Data Analyst,97769,2024,2019-08-11,Austin,Full-time
158
+ 1043,Omar,Adams,Omar Adams,Data,Data Analyst,90054,2021,2018-11-02,Boston,Full-time
159
+ 1043,Omar,Adams,Omar Adams,Data,Data Analyst,80550,2022,2018-11-02,Boston,Full-time
160
+ 1043,Omar,Adams,Omar Adams,Data,Data Analyst,94473,2023,2018-11-02,Boston,Full-time
161
+ 1043,Omar,Adams,Omar Adams,Data,Data Analyst,101474,2024,2018-11-02,Boston,Full-time
162
+ 1044,Quinn,Roberts,Quinn Roberts,Data,Senior Data Analyst,101838,2021,2020-03-20,Remote,Full-time
163
+ 1044,Quinn,Roberts,Quinn Roberts,Data,Senior Data Analyst,113224,2022,2020-03-20,Remote,Full-time
164
+ 1044,Quinn,Roberts,Quinn Roberts,Data,Senior Data Analyst,129116,2023,2020-03-20,Remote,Full-time
165
+ 1044,Quinn,Roberts,Quinn Roberts,Data,Senior Data Analyst,133085,2024,2020-03-20,Remote,Full-time
166
+ 1045,Tara,Gonzalez,Tara Gonzalez,Data,Senior Data Analyst,119164,2021,2018-10-23,Boston,Full-time
167
+ 1045,Tara,Gonzalez,Tara Gonzalez,Data,Senior Data Analyst,137619,2022,2018-10-23,Boston,Full-time
168
+ 1045,Tara,Gonzalez,Tara Gonzalez,Data,Senior Data Analyst,133313,2023,2018-10-23,Boston,Full-time
169
+ 1045,Tara,Gonzalez,Tara Gonzalez,Data,Senior Data Analyst,147766,2024,2018-10-23,Boston,Full-time
170
+ 1046,Ben,Nelson,Ben Nelson,Data,Senior Data Analyst,103476,2021,2020-02-17,Seattle,Full-time
171
+ 1046,Ben,Nelson,Ben Nelson,Data,Senior Data Analyst,111944,2022,2020-02-17,Seattle,Full-time
172
+ 1046,Ben,Nelson,Ben Nelson,Data,Senior Data Analyst,126458,2023,2020-02-17,Seattle,Full-time
173
+ 1046,Ben,Nelson,Ben Nelson,Data,Senior Data Analyst,116866,2024,2020-02-17,Seattle,Full-time
174
+ 1047,Laura,Campbell,Laura Campbell,Data,Senior Data Analyst,101297,2022,2022-11-09,Remote,Contract
175
+ 1047,Laura,Campbell,Laura Campbell,Data,Senior Data Analyst,111252,2023,2022-11-09,Remote,Contract
176
+ 1047,Laura,Campbell,Laura Campbell,Data,Senior Data Analyst,106054,2024,2022-11-09,Remote,Contract
177
+ 1048,Fiona,Moore,Fiona Moore,Data,Senior Data Analyst,99579,2021,2021-04-25,Chicago,Contract
178
+ 1048,Fiona,Moore,Fiona Moore,Data,Senior Data Analyst,112446,2022,2021-04-25,Chicago,Contract
179
+ 1048,Fiona,Moore,Fiona Moore,Data,Senior Data Analyst,103914,2023,2021-04-25,Chicago,Contract
180
+ 1048,Fiona,Moore,Fiona Moore,Data,Senior Data Analyst,121005,2024,2021-04-25,Chicago,Contract
181
+ 1049,Maya,Hall,Maya Hall,Data,Senior Data Analyst,110049,2021,2020-09-01,Remote,Full-time
182
+ 1049,Maya,Hall,Maya Hall,Data,Senior Data Analyst,119146,2022,2020-09-01,Remote,Full-time
183
+ 1049,Maya,Hall,Maya Hall,Data,Senior Data Analyst,126568,2023,2020-09-01,Remote,Full-time
184
+ 1049,Maya,Hall,Maya Hall,Data,Senior Data Analyst,133385,2024,2020-09-01,Remote,Full-time
185
+ 1050,Fiona,Jackson,Fiona Jackson,Data,Senior Data Analyst,112338,2021,2019-07-23,San Francisco,Full-time
186
+ 1050,Fiona,Jackson,Fiona Jackson,Data,Senior Data Analyst,116988,2022,2019-07-23,San Francisco,Full-time
187
+ 1050,Fiona,Jackson,Fiona Jackson,Data,Senior Data Analyst,140053,2023,2019-07-23,San Francisco,Full-time
188
+ 1050,Fiona,Jackson,Fiona Jackson,Data,Senior Data Analyst,127526,2024,2019-07-23,San Francisco,Full-time
189
+ 1051,Tina,Taylor,Tina Taylor,Data,Senior Data Analyst,110241,2021,2019-02-24,San Francisco,Full-time
190
+ 1051,Tina,Taylor,Tina Taylor,Data,Senior Data Analyst,116619,2022,2019-02-24,San Francisco,Full-time
191
+ 1051,Tina,Taylor,Tina Taylor,Data,Senior Data Analyst,119331,2023,2019-02-24,San Francisco,Full-time
192
+ 1051,Tina,Taylor,Tina Taylor,Data,Senior Data Analyst,153692,2024,2019-02-24,San Francisco,Full-time
193
+ 1052,Maya,Jackson,Maya Jackson,Data,Data Scientist,124197,2021,2018-04-10,San Francisco,Full-time
194
+ 1052,Maya,Jackson,Maya Jackson,Data,Data Scientist,145862,2022,2018-04-10,San Francisco,Full-time
195
+ 1052,Maya,Jackson,Maya Jackson,Data,Data Scientist,180648,2023,2018-04-10,San Francisco,Full-time
196
+ 1052,Maya,Jackson,Maya Jackson,Data,Data Scientist,165391,2024,2018-04-10,San Francisco,Full-time
197
+ 1053,Will,Young,Will Young,Data,Data Scientist,138816,2021,2018-01-19,Austin,Full-time
198
+ 1053,Will,Young,Will Young,Data,Data Scientist,157431,2022,2018-01-19,Austin,Full-time
199
+ 1053,Will,Young,Will Young,Data,Data Scientist,160983,2023,2018-01-19,Austin,Full-time
200
+ 1053,Will,Young,Will Young,Data,Data Scientist,148714,2024,2018-01-19,Austin,Full-time
201
+ 1054,Kate,Green,Kate Green,Data,Data Scientist,140648,2021,2018-03-05,Boston,Contract
202
+ 1054,Kate,Green,Kate Green,Data,Data Scientist,146167,2022,2018-03-05,Boston,Contract
203
+ 1054,Kate,Green,Kate Green,Data,Data Scientist,159775,2023,2018-03-05,Boston,Contract
204
+ 1054,Kate,Green,Kate Green,Data,Data Scientist,183968,2024,2018-03-05,Boston,Contract
205
+ 1055,Yara,Lewis,Yara Lewis,Data,Data Scientist,125304,2021,2021-05-28,Remote,Full-time
206
+ 1055,Yara,Lewis,Yara Lewis,Data,Data Scientist,135913,2022,2021-05-28,Remote,Full-time
207
+ 1055,Yara,Lewis,Yara Lewis,Data,Data Scientist,133934,2023,2021-05-28,Remote,Full-time
208
+ 1055,Yara,Lewis,Yara Lewis,Data,Data Scientist,142240,2024,2021-05-28,Remote,Full-time
209
+ 1056,Kevin,Thomas,Kevin Thomas,Data,Data Scientist,140070,2021,2019-09-03,San Francisco,Full-time
210
+ 1056,Kevin,Thomas,Kevin Thomas,Data,Data Scientist,129998,2022,2019-09-03,San Francisco,Full-time
211
+ 1056,Kevin,Thomas,Kevin Thomas,Data,Data Scientist,139427,2023,2019-09-03,San Francisco,Full-time
212
+ 1056,Kevin,Thomas,Kevin Thomas,Data,Data Scientist,159439,2024,2019-09-03,San Francisco,Full-time
213
+ 1057,Omar,Taylor,Omar Taylor,Data,Data Scientist,115795,2022,2022-11-26,San Francisco,Full-time
214
+ 1057,Omar,Taylor,Omar Taylor,Data,Data Scientist,121148,2023,2022-11-26,San Francisco,Full-time
215
+ 1057,Omar,Taylor,Omar Taylor,Data,Data Scientist,120285,2024,2022-11-26,San Francisco,Full-time
216
+ 1058,Tina,Hill,Tina Hill,Data,Data Scientist,127193,2022,2022-05-15,New York,Full-time
217
+ 1058,Tina,Hill,Tina Hill,Data,Data Scientist,131853,2023,2022-05-15,New York,Full-time
218
+ 1058,Tina,Hill,Tina Hill,Data,Data Scientist,124953,2024,2022-05-15,New York,Full-time
219
+ 1059,Ben,Mitchell,Ben Mitchell,Data,Senior Data Scientist,170279,2021,2020-10-09,New York,Full-time
220
+ 1059,Ben,Mitchell,Ben Mitchell,Data,Senior Data Scientist,185143,2022,2020-10-09,New York,Full-time
221
+ 1059,Ben,Mitchell,Ben Mitchell,Data,Senior Data Scientist,182278,2023,2020-10-09,New York,Full-time
222
+ 1059,Ben,Mitchell,Ben Mitchell,Data,Senior Data Scientist,211178,2024,2020-10-09,New York,Full-time
223
+ 1060,Will,Carter,Will Carter,Data,Senior Data Scientist,171550,2021,2019-08-17,Seattle,Full-time
224
+ 1060,Will,Carter,Will Carter,Data,Senior Data Scientist,192875,2022,2019-08-17,Seattle,Full-time
225
+ 1060,Will,Carter,Will Carter,Data,Senior Data Scientist,179878,2023,2019-08-17,Seattle,Full-time
226
+ 1060,Will,Carter,Will Carter,Data,Senior Data Scientist,192778,2024,2019-08-17,Seattle,Full-time
227
+ 1061,Qian,Miller,Qian Miller,Data,Senior Data Scientist,187508,2021,2019-06-14,Seattle,Full-time
228
+ 1061,Qian,Miller,Qian Miller,Data,Senior Data Scientist,195953,2022,2019-06-14,Seattle,Full-time
229
+ 1061,Qian,Miller,Qian Miller,Data,Senior Data Scientist,187123,2023,2019-06-14,Seattle,Full-time
230
+ 1061,Qian,Miller,Qian Miller,Data,Senior Data Scientist,216386,2024,2019-06-14,Seattle,Full-time
231
+ 1062,Grace,Smith,Grace Smith,Data,ML Engineer,151456,2022,2022-08-14,New York,Full-time
232
+ 1062,Grace,Smith,Grace Smith,Data,ML Engineer,154250,2023,2022-08-14,New York,Full-time
233
+ 1062,Grace,Smith,Grace Smith,Data,ML Engineer,150491,2024,2022-08-14,New York,Full-time
234
+ 1063,Ivan,Jackson,Ivan Jackson,Data,ML Engineer,151057,2021,2021-12-16,New York,Full-time
235
+ 1063,Ivan,Jackson,Ivan Jackson,Data,ML Engineer,143783,2022,2021-12-16,New York,Full-time
236
+ 1063,Ivan,Jackson,Ivan Jackson,Data,ML Engineer,167105,2023,2021-12-16,New York,Full-time
237
+ 1063,Ivan,Jackson,Ivan Jackson,Data,ML Engineer,179629,2024,2021-12-16,New York,Full-time
238
+ 1064,Hannah,Robinson,Hannah Robinson,Data,ML Engineer,177041,2021,2018-11-27,San Francisco,Full-time
239
+ 1064,Hannah,Robinson,Hannah Robinson,Data,ML Engineer,187305,2022,2018-11-27,San Francisco,Full-time
240
+ 1064,Hannah,Robinson,Hannah Robinson,Data,ML Engineer,191450,2023,2018-11-27,San Francisco,Full-time
241
+ 1064,Hannah,Robinson,Hannah Robinson,Data,ML Engineer,187401,2024,2018-11-27,San Francisco,Full-time
242
+ 1065,Michael,Hill,Michael Hill,Data,ML Engineer,156310,2022,2022-12-05,Boston,Full-time
243
+ 1065,Michael,Hill,Michael Hill,Data,ML Engineer,168637,2023,2022-12-05,Boston,Full-time
244
+ 1065,Michael,Hill,Michael Hill,Data,ML Engineer,175091,2024,2022-12-05,Boston,Full-time
245
+ 1066,Sam,Campbell,Sam Campbell,Data,ML Engineer,157071,2021,2020-10-19,Seattle,Full-time
246
+ 1066,Sam,Campbell,Sam Campbell,Data,ML Engineer,158971,2022,2020-10-19,Seattle,Full-time
247
+ 1066,Sam,Campbell,Sam Campbell,Data,ML Engineer,175902,2023,2020-10-19,Seattle,Full-time
248
+ 1066,Sam,Campbell,Sam Campbell,Data,ML Engineer,213127,2024,2020-10-19,Seattle,Full-time
249
+ 1067,Steve,Thomas,Steve Thomas,Data,ML Engineer,154996,2022,2022-07-08,Boston,Full-time
250
+ 1067,Steve,Thomas,Steve Thomas,Data,ML Engineer,167172,2023,2022-07-08,Boston,Full-time
251
+ 1067,Steve,Thomas,Steve Thomas,Data,ML Engineer,168070,2024,2022-07-08,Boston,Full-time
252
+ 1068,Julia,Young,Julia Young,Data,Head of Data,257330,2021,2018-03-17,Remote,Full-time
253
+ 1068,Julia,Young,Julia Young,Data,Head of Data,238586,2022,2018-03-17,Remote,Full-time
254
+ 1068,Julia,Young,Julia Young,Data,Head of Data,261649,2023,2018-03-17,Remote,Full-time
255
+ 1068,Julia,Young,Julia Young,Data,Head of Data,268356,2024,2018-03-17,Remote,Full-time
256
+ 1069,Julia,Jones,Julia Jones,Data,Head of Data,207167,2021,2021-05-11,Remote,Full-time
257
+ 1069,Julia,Jones,Julia Jones,Data,Head of Data,222519,2022,2021-05-11,Remote,Full-time
258
+ 1069,Julia,Jones,Julia Jones,Data,Head of Data,205591,2023,2021-05-11,Remote,Full-time
259
+ 1069,Julia,Jones,Julia Jones,Data,Head of Data,246656,2024,2021-05-11,Remote,Full-time
260
+ 1070,Iris,Williams,Iris Williams,Data,Head of Data,203177,2022,2022-02-08,Seattle,Full-time
261
+ 1070,Iris,Williams,Iris Williams,Data,Head of Data,187771,2023,2022-02-08,Seattle,Full-time
262
+ 1070,Iris,Williams,Iris Williams,Data,Head of Data,234406,2024,2022-02-08,Seattle,Full-time
263
+ 1071,Clara,Hernandez,Clara Hernandez,Data,Head of Data,197488,2021,2020-01-02,Austin,Full-time
264
+ 1071,Clara,Hernandez,Clara Hernandez,Data,Head of Data,209792,2022,2020-01-02,Austin,Full-time
265
+ 1071,Clara,Hernandez,Clara Hernandez,Data,Head of Data,242883,2023,2020-01-02,Austin,Full-time
266
+ 1071,Clara,Hernandez,Clara Hernandez,Data,Head of Data,206803,2024,2020-01-02,Austin,Full-time
267
+ 1072,Yara,Flores,Yara Flores,Data,Head of Data,204543,2021,2019-08-19,San Francisco,Full-time
268
+ 1072,Yara,Flores,Yara Flores,Data,Head of Data,198604,2022,2019-08-19,San Francisco,Full-time
269
+ 1072,Yara,Flores,Yara Flores,Data,Head of Data,274253,2023,2019-08-19,San Francisco,Full-time
270
+ 1072,Yara,Flores,Yara Flores,Data,Head of Data,246416,2024,2019-08-19,San Francisco,Full-time
271
+ 1073,Clara,Thompson,Clara Thompson,Data,Head of Data,186280,2022,2022-05-21,Chicago,Full-time
272
+ 1073,Clara,Thompson,Clara Thompson,Data,Head of Data,223798,2023,2022-05-21,Chicago,Full-time
273
+ 1073,Clara,Thompson,Clara Thompson,Data,Head of Data,202904,2024,2022-05-21,Chicago,Full-time
274
+ 1074,Wendy,Torres,Wendy Torres,Data,Head of Data,204888,2021,2020-12-10,New York,Full-time
275
+ 1074,Wendy,Torres,Wendy Torres,Data,Head of Data,230051,2022,2020-12-10,New York,Full-time
276
+ 1074,Wendy,Torres,Wendy Torres,Data,Head of Data,217736,2023,2020-12-10,New York,Full-time
277
+ 1074,Wendy,Torres,Wendy Torres,Data,Head of Data,258949,2024,2020-12-10,New York,Full-time
278
+ 1075,Sam,Roberts,Sam Roberts,Data,Head of Data,223686,2021,2019-10-26,Austin,Full-time
279
+ 1075,Sam,Roberts,Sam Roberts,Data,Head of Data,243477,2022,2019-10-26,Austin,Full-time
280
+ 1075,Sam,Roberts,Sam Roberts,Data,Head of Data,263824,2023,2019-10-26,Austin,Full-time
281
+ 1075,Sam,Roberts,Sam Roberts,Data,Head of Data,281731,2024,2019-10-26,Austin,Full-time
282
+ 1076,Carlos,Martin,Carlos Martin,Product,Product Manager,112587,2021,2021-01-19,Austin,Full-time
283
+ 1076,Carlos,Martin,Carlos Martin,Product,Product Manager,117240,2022,2021-01-19,Austin,Full-time
284
+ 1076,Carlos,Martin,Carlos Martin,Product,Product Manager,127019,2023,2021-01-19,Austin,Full-time
285
+ 1076,Carlos,Martin,Carlos Martin,Product,Product Manager,148070,2024,2021-01-19,Austin,Full-time
286
+ 1077,Rachel,Hernandez,Rachel Hernandez,Product,Product Manager,124756,2021,2020-08-26,Austin,Full-time
287
+ 1077,Rachel,Hernandez,Rachel Hernandez,Product,Product Manager,131601,2022,2020-08-26,Austin,Full-time
288
+ 1077,Rachel,Hernandez,Rachel Hernandez,Product,Product Manager,137013,2023,2020-08-26,Austin,Full-time
289
+ 1077,Rachel,Hernandez,Rachel Hernandez,Product,Product Manager,147157,2024,2020-08-26,Austin,Full-time
290
+ 1078,James,White,James White,Product,Product Manager,127135,2021,2018-07-01,Austin,Contract
291
+ 1078,James,White,James White,Product,Product Manager,145193,2022,2018-07-01,Austin,Contract
292
+ 1078,James,White,James White,Product,Product Manager,153081,2023,2018-07-01,Austin,Contract
293
+ 1078,James,White,James White,Product,Product Manager,161261,2024,2018-07-01,Austin,Contract
294
+ 1079,Elena,Johnson,Elena Johnson,Product,Product Manager,120414,2022,2022-09-11,Remote,Full-time
295
+ 1079,Elena,Johnson,Elena Johnson,Product,Product Manager,128412,2023,2022-09-11,Remote,Full-time
296
+ 1079,Elena,Johnson,Elena Johnson,Product,Product Manager,122458,2024,2022-09-11,Remote,Full-time
297
+ 1080,Carlos,Williams,Carlos Williams,Product,Product Manager,117019,2021,2020-08-04,New York,Full-time
298
+ 1080,Carlos,Williams,Carlos Williams,Product,Product Manager,134330,2022,2020-08-04,New York,Full-time
299
+ 1080,Carlos,Williams,Carlos Williams,Product,Product Manager,155021,2023,2020-08-04,New York,Full-time
300
+ 1080,Carlos,Williams,Carlos Williams,Product,Product Manager,149896,2024,2020-08-04,New York,Full-time
301
+ 1081,Julia,Clark,Julia Clark,Product,Product Manager,125519,2021,2018-08-20,Chicago,Full-time
302
+ 1081,Julia,Clark,Julia Clark,Product,Product Manager,156461,2022,2018-08-20,Chicago,Full-time
303
+ 1081,Julia,Clark,Julia Clark,Product,Product Manager,153569,2023,2018-08-20,Chicago,Full-time
304
+ 1081,Julia,Clark,Julia Clark,Product,Product Manager,171954,2024,2018-08-20,Chicago,Full-time
305
+ 1082,Paul,Thompson,Paul Thompson,Product,Product Manager,156046,2021,2018-07-09,San Francisco,Full-time
306
+ 1082,Paul,Thompson,Paul Thompson,Product,Product Manager,126801,2022,2018-07-09,San Francisco,Full-time
307
+ 1082,Paul,Thompson,Paul Thompson,Product,Product Manager,173076,2023,2018-07-09,San Francisco,Full-time
308
+ 1082,Paul,Thompson,Paul Thompson,Product,Product Manager,137498,2024,2018-07-09,San Francisco,Full-time
309
+ 1083,Ivan,Torres,Ivan Torres,Product,Product Manager,119887,2021,2019-02-27,Boston,Contract
310
+ 1083,Ivan,Torres,Ivan Torres,Product,Product Manager,140228,2022,2019-02-27,Boston,Contract
311
+ 1083,Ivan,Torres,Ivan Torres,Product,Product Manager,146514,2023,2019-02-27,Boston,Contract
312
+ 1083,Ivan,Torres,Ivan Torres,Product,Product Manager,145639,2024,2019-02-27,Boston,Contract
313
+ 1084,Ivan,Wright,Ivan Wright,Product,Senior Product Manager,149050,2021,2020-03-04,Seattle,Full-time
314
+ 1084,Ivan,Wright,Ivan Wright,Product,Senior Product Manager,172094,2022,2020-03-04,Seattle,Full-time
315
+ 1084,Ivan,Wright,Ivan Wright,Product,Senior Product Manager,154533,2023,2020-03-04,Seattle,Full-time
316
+ 1084,Ivan,Wright,Ivan Wright,Product,Senior Product Manager,167954,2024,2020-03-04,Seattle,Full-time
317
+ 1085,Hannah,Mitchell,Hannah Mitchell,Product,Senior Product Manager,160659,2021,2018-08-15,Boston,Full-time
318
+ 1085,Hannah,Mitchell,Hannah Mitchell,Product,Senior Product Manager,199369,2022,2018-08-15,Boston,Full-time
319
+ 1085,Hannah,Mitchell,Hannah Mitchell,Product,Senior Product Manager,182891,2023,2018-08-15,Boston,Full-time
320
+ 1085,Hannah,Mitchell,Hannah Mitchell,Product,Senior Product Manager,227110,2024,2018-08-15,Boston,Full-time
321
+ 1086,David,Adams,David Adams,Product,Senior Product Manager,158645,2021,2018-01-16,Boston,Full-time
322
+ 1086,David,Adams,David Adams,Product,Senior Product Manager,188601,2022,2018-01-16,Boston,Full-time
323
+ 1086,David,Adams,David Adams,Product,Senior Product Manager,204888,2023,2018-01-16,Boston,Full-time
324
+ 1086,David,Adams,David Adams,Product,Senior Product Manager,170855,2024,2018-01-16,Boston,Full-time
325
+ 1087,Noah,Green,Noah Green,Product,Senior Product Manager,148786,2022,2022-09-23,Austin,Full-time
326
+ 1087,Noah,Green,Noah Green,Product,Senior Product Manager,158910,2023,2022-09-23,Austin,Full-time
327
+ 1087,Noah,Green,Noah Green,Product,Senior Product Manager,164689,2024,2022-09-23,Austin,Full-time
328
+ 1088,Paul,Roberts,Paul Roberts,Product,Director of Product,178654,2022,2022-12-28,San Francisco,Full-time
329
+ 1088,Paul,Roberts,Paul Roberts,Product,Director of Product,195757,2023,2022-12-28,San Francisco,Full-time
330
+ 1088,Paul,Roberts,Paul Roberts,Product,Director of Product,191816,2024,2022-12-28,San Francisco,Full-time
331
+ 1089,Ben,Lee,Ben Lee,Product,Director of Product,207679,2021,2020-06-05,Seattle,Full-time
332
+ 1089,Ben,Lee,Ben Lee,Product,Director of Product,186028,2022,2020-06-05,Seattle,Full-time
333
+ 1089,Ben,Lee,Ben Lee,Product,Director of Product,243198,2023,2020-06-05,Seattle,Full-time
334
+ 1089,Ben,Lee,Ben Lee,Product,Director of Product,240280,2024,2020-06-05,Seattle,Full-time
335
+ 1090,James,Scott,James Scott,Product,Director of Product,220127,2021,2020-11-04,Chicago,Full-time
336
+ 1090,James,Scott,James Scott,Product,Director of Product,225496,2022,2020-11-04,Chicago,Full-time
337
+ 1090,James,Scott,James Scott,Product,Director of Product,199095,2023,2020-11-04,Chicago,Full-time
338
+ 1090,James,Scott,James Scott,Product,Director of Product,208032,2024,2020-11-04,Chicago,Full-time
339
+ 1091,Grace,Wilson,Grace Wilson,Product,Director of Product,209338,2021,2019-11-16,San Francisco,Full-time
340
+ 1091,Grace,Wilson,Grace Wilson,Product,Director of Product,200563,2022,2019-11-16,San Francisco,Full-time
341
+ 1091,Grace,Wilson,Grace Wilson,Product,Director of Product,218781,2023,2019-11-16,San Francisco,Full-time
342
+ 1091,Grace,Wilson,Grace Wilson,Product,Director of Product,263327,2024,2019-11-16,San Francisco,Full-time
343
+ 1092,Noah,Flores,Noah Flores,Product,Director of Product,180311,2022,2022-01-20,Seattle,Full-time
344
+ 1092,Noah,Flores,Noah Flores,Product,Director of Product,218213,2023,2022-01-20,Seattle,Full-time
345
+ 1092,Noah,Flores,Noah Flores,Product,Director of Product,194136,2024,2022-01-20,Seattle,Full-time
346
+ 1093,Julia,Torres,Julia Torres,Product,Director of Product,189827,2021,2021-02-05,Seattle,Full-time
347
+ 1093,Julia,Torres,Julia Torres,Product,Director of Product,196111,2022,2021-02-05,Seattle,Full-time
348
+ 1093,Julia,Torres,Julia Torres,Product,Director of Product,195755,2023,2021-02-05,Seattle,Full-time
349
+ 1093,Julia,Torres,Julia Torres,Product,Director of Product,234795,2024,2021-02-05,Seattle,Full-time
350
+ 1094,Maya,Garcia,Maya Garcia,Product,Director of Product,190655,2021,2018-03-06,Boston,Contract
351
+ 1094,Maya,Garcia,Maya Garcia,Product,Director of Product,227809,2022,2018-03-06,Boston,Contract
352
+ 1094,Maya,Garcia,Maya Garcia,Product,Director of Product,248688,2023,2018-03-06,Boston,Contract
353
+ 1094,Maya,Garcia,Maya Garcia,Product,Director of Product,240420,2024,2018-03-06,Boston,Contract
354
+ 1095,Wendy,Ramirez,Wendy Ramirez,Product,Director of Product,228406,2021,2018-05-22,Seattle,Contract
355
+ 1095,Wendy,Ramirez,Wendy Ramirez,Product,Director of Product,209862,2022,2018-05-22,Seattle,Contract
356
+ 1095,Wendy,Ramirez,Wendy Ramirez,Product,Director of Product,228110,2023,2018-05-22,Seattle,Contract
357
+ 1095,Wendy,Ramirez,Wendy Ramirez,Product,Director of Product,231917,2024,2018-05-22,Seattle,Contract
358
+ 1096,Will,Taylor,Will Taylor,Marketing,Marketing Coordinator,56070,2021,2020-06-04,New York,Full-time
359
+ 1096,Will,Taylor,Will Taylor,Marketing,Marketing Coordinator,64199,2022,2020-06-04,New York,Full-time
360
+ 1096,Will,Taylor,Will Taylor,Marketing,Marketing Coordinator,70183,2023,2020-06-04,New York,Full-time
361
+ 1096,Will,Taylor,Will Taylor,Marketing,Marketing Coordinator,67443,2024,2020-06-04,New York,Full-time
362
+ 1097,Vera,Williams,Vera Williams,Marketing,Marketing Coordinator,56907,2021,2021-01-15,New York,Full-time
363
+ 1097,Vera,Williams,Vera Williams,Marketing,Marketing Coordinator,58808,2022,2021-01-15,New York,Full-time
364
+ 1097,Vera,Williams,Vera Williams,Marketing,Marketing Coordinator,54529,2023,2021-01-15,New York,Full-time
365
+ 1097,Vera,Williams,Vera Williams,Marketing,Marketing Coordinator,68043,2024,2021-01-15,New York,Full-time
366
+ 1098,Noah,Robinson,Noah Robinson,Marketing,Marketing Coordinator,59484,2021,2020-02-14,Boston,Full-time
367
+ 1098,Noah,Robinson,Noah Robinson,Marketing,Marketing Coordinator,61303,2022,2020-02-14,Boston,Full-time
368
+ 1098,Noah,Robinson,Noah Robinson,Marketing,Marketing Coordinator,62096,2023,2020-02-14,Boston,Full-time
369
+ 1098,Noah,Robinson,Noah Robinson,Marketing,Marketing Coordinator,62943,2024,2020-02-14,Boston,Full-time
370
+ 1099,Grace,Green,Grace Green,Marketing,Marketing Coordinator,70284,2021,2018-09-17,San Francisco,Full-time
371
+ 1099,Grace,Green,Grace Green,Marketing,Marketing Coordinator,66499,2022,2018-09-17,San Francisco,Full-time
372
+ 1099,Grace,Green,Grace Green,Marketing,Marketing Coordinator,63484,2023,2018-09-17,San Francisco,Full-time
373
+ 1099,Grace,Green,Grace Green,Marketing,Marketing Coordinator,65648,2024,2018-09-17,San Francisco,Full-time
374
+ 1100,Ethan,Lopez,Ethan Lopez,Marketing,Marketing Manager,93910,2021,2021-08-25,Remote,Contract
375
+ 1100,Ethan,Lopez,Ethan Lopez,Marketing,Marketing Manager,94182,2022,2021-08-25,Remote,Contract
376
+ 1100,Ethan,Lopez,Ethan Lopez,Marketing,Marketing Manager,104615,2023,2021-08-25,Remote,Contract
377
+ 1100,Ethan,Lopez,Ethan Lopez,Marketing,Marketing Manager,96564,2024,2021-08-25,Remote,Contract
378
+ 1101,Ethan,Walker,Ethan Walker,Marketing,Marketing Manager,84183,2021,2021-11-10,Boston,Full-time
379
+ 1101,Ethan,Walker,Ethan Walker,Marketing,Marketing Manager,88950,2022,2021-11-10,Boston,Full-time
380
+ 1101,Ethan,Walker,Ethan Walker,Marketing,Marketing Manager,89940,2023,2021-11-10,Boston,Full-time
381
+ 1101,Ethan,Walker,Ethan Walker,Marketing,Marketing Manager,101556,2024,2021-11-10,Boston,Full-time
382
+ 1102,Fiona,Flores,Fiona Flores,Marketing,Marketing Manager,91660,2022,2022-09-13,Chicago,Contract
383
+ 1102,Fiona,Flores,Fiona Flores,Marketing,Marketing Manager,92266,2023,2022-09-13,Chicago,Contract
384
+ 1102,Fiona,Flores,Fiona Flores,Marketing,Marketing Manager,102311,2024,2022-09-13,Chicago,Contract
385
+ 1103,Uma,Hill,Uma Hill,Marketing,Marketing Manager,93485,2021,2021-09-05,New York,Full-time
386
+ 1103,Uma,Hill,Uma Hill,Marketing,Marketing Manager,94605,2022,2021-09-05,New York,Full-time
387
+ 1103,Uma,Hill,Uma Hill,Marketing,Marketing Manager,90342,2023,2021-09-05,New York,Full-time
388
+ 1103,Uma,Hill,Uma Hill,Marketing,Marketing Manager,97000,2024,2021-09-05,New York,Full-time
389
+ 1104,Clara,King,Clara King,Marketing,Marketing Manager,84786,2022,2022-10-06,Austin,Full-time
390
+ 1104,Clara,King,Clara King,Marketing,Marketing Manager,95908,2023,2022-10-06,Austin,Full-time
391
+ 1104,Clara,King,Clara King,Marketing,Marketing Manager,94820,2024,2022-10-06,Austin,Full-time
392
+ 1105,Victor,Jones,Victor Jones,Marketing,Marketing Manager,94504,2021,2020-02-18,Seattle,Full-time
393
+ 1105,Victor,Jones,Victor Jones,Marketing,Marketing Manager,105739,2022,2020-02-18,Seattle,Full-time
394
+ 1105,Victor,Jones,Victor Jones,Marketing,Marketing Manager,103799,2023,2020-02-18,Seattle,Full-time
395
+ 1105,Victor,Jones,Victor Jones,Marketing,Marketing Manager,101430,2024,2020-02-18,Seattle,Full-time
396
+ 1106,Wendy,Martin,Wendy Martin,Marketing,Marketing Manager,84603,2021,2021-03-20,Seattle,Full-time
397
+ 1106,Wendy,Martin,Wendy Martin,Marketing,Marketing Manager,98427,2022,2021-03-20,Seattle,Full-time
398
+ 1106,Wendy,Martin,Wendy Martin,Marketing,Marketing Manager,104386,2023,2021-03-20,Seattle,Full-time
399
+ 1106,Wendy,Martin,Wendy Martin,Marketing,Marketing Manager,109130,2024,2021-03-20,Seattle,Full-time
400
+ 1107,Henry,Garcia,Henry Garcia,Marketing,Marketing Manager,94369,2021,2021-09-12,New York,Full-time
401
+ 1107,Henry,Garcia,Henry Garcia,Marketing,Marketing Manager,95520,2022,2021-09-12,New York,Full-time
402
+ 1107,Henry,Garcia,Henry Garcia,Marketing,Marketing Manager,102888,2023,2021-09-12,New York,Full-time
403
+ 1107,Henry,Garcia,Henry Garcia,Marketing,Marketing Manager,93013,2024,2021-09-12,New York,Full-time
404
+ 1108,Grace,Roberts,Grace Roberts,Marketing,Senior Marketing Manager,114796,2022,2022-12-17,New York,Full-time
405
+ 1108,Grace,Roberts,Grace Roberts,Marketing,Senior Marketing Manager,110854,2023,2022-12-17,New York,Full-time
406
+ 1108,Grace,Roberts,Grace Roberts,Marketing,Senior Marketing Manager,125712,2024,2022-12-17,New York,Full-time
407
+ 1109,Noah,Hernandez,Noah Hernandez,Marketing,Senior Marketing Manager,114633,2021,2021-01-14,Austin,Full-time
408
+ 1109,Noah,Hernandez,Noah Hernandez,Marketing,Senior Marketing Manager,126452,2022,2021-01-14,Austin,Full-time
409
+ 1109,Noah,Hernandez,Noah Hernandez,Marketing,Senior Marketing Manager,115525,2023,2021-01-14,Austin,Full-time
410
+ 1109,Noah,Hernandez,Noah Hernandez,Marketing,Senior Marketing Manager,148508,2024,2021-01-14,Austin,Full-time
411
+ 1110,Michael,White,Michael White,Marketing,Senior Marketing Manager,112263,2022,2022-08-15,Boston,Full-time
412
+ 1110,Michael,White,Michael White,Marketing,Senior Marketing Manager,110101,2023,2022-08-15,Boston,Full-time
413
+ 1110,Michael,White,Michael White,Marketing,Senior Marketing Manager,123842,2024,2022-08-15,Boston,Full-time
414
+ 1111,Diana,Adams,Diana Adams,Marketing,VP of Marketing,166092,2021,2021-06-18,New York,Contract
415
+ 1111,Diana,Adams,Diana Adams,Marketing,VP of Marketing,176966,2022,2021-06-18,New York,Contract
416
+ 1111,Diana,Adams,Diana Adams,Marketing,VP of Marketing,186621,2023,2021-06-18,New York,Contract
417
+ 1111,Diana,Adams,Diana Adams,Marketing,VP of Marketing,219473,2024,2021-06-18,New York,Contract
418
+ 1112,Omar,Lewis,Omar Lewis,Marketing,VP of Marketing,173475,2021,2020-01-14,New York,Full-time
419
+ 1112,Omar,Lewis,Omar Lewis,Marketing,VP of Marketing,197193,2022,2020-01-14,New York,Full-time
420
+ 1112,Omar,Lewis,Omar Lewis,Marketing,VP of Marketing,206329,2023,2020-01-14,New York,Full-time
421
+ 1112,Omar,Lewis,Omar Lewis,Marketing,VP of Marketing,235693,2024,2020-01-14,New York,Full-time
422
+ 1113,Julia,Rodriguez,Julia Rodriguez,Marketing,VP of Marketing,209919,2021,2018-05-27,Chicago,Full-time
423
+ 1113,Julia,Rodriguez,Julia Rodriguez,Marketing,VP of Marketing,237019,2022,2018-05-27,Chicago,Full-time
424
+ 1113,Julia,Rodriguez,Julia Rodriguez,Marketing,VP of Marketing,190687,2023,2018-05-27,Chicago,Full-time
425
+ 1113,Julia,Rodriguez,Julia Rodriguez,Marketing,VP of Marketing,234895,2024,2018-05-27,Chicago,Full-time
426
+ 1114,Maya,King,Maya King,Marketing,VP of Marketing,158023,2021,2021-02-25,Austin,Full-time
427
+ 1114,Maya,King,Maya King,Marketing,VP of Marketing,192743,2022,2021-02-25,Austin,Full-time
428
+ 1114,Maya,King,Maya King,Marketing,VP of Marketing,177548,2023,2021-02-25,Austin,Full-time
429
+ 1114,Maya,King,Maya King,Marketing,VP of Marketing,219658,2024,2021-02-25,Austin,Full-time
430
+ 1115,Bob,Green,Bob Green,Marketing,VP of Marketing,156453,2022,2022-10-08,Seattle,Full-time
431
+ 1115,Bob,Green,Bob Green,Marketing,VP of Marketing,184177,2023,2022-10-08,Seattle,Full-time
432
+ 1115,Bob,Green,Bob Green,Marketing,VP of Marketing,193499,2024,2022-10-08,Seattle,Full-time
433
+ 1116,Xavier,Jones,Xavier Jones,Sales,Sales Representative,59885,2022,2022-09-17,Boston,Contract
434
+ 1116,Xavier,Jones,Xavier Jones,Sales,Sales Representative,66189,2023,2022-09-17,Boston,Contract
435
+ 1116,Xavier,Jones,Xavier Jones,Sales,Sales Representative,67816,2024,2022-09-17,Boston,Contract
436
+ 1117,Bob,Thompson,Bob Thompson,Sales,Sales Representative,78117,2021,2018-06-08,Seattle,Full-time
437
+ 1117,Bob,Thompson,Bob Thompson,Sales,Sales Representative,66876,2022,2018-06-08,Seattle,Full-time
438
+ 1117,Bob,Thompson,Bob Thompson,Sales,Sales Representative,85832,2023,2018-06-08,Seattle,Full-time
439
+ 1117,Bob,Thompson,Bob Thompson,Sales,Sales Representative,81090,2024,2018-06-08,Seattle,Full-time
440
+ 1118,David,Hall,David Hall,Sales,Sales Representative,64514,2021,2021-11-06,Boston,Full-time
441
+ 1118,David,Hall,David Hall,Sales,Sales Representative,61826,2022,2021-11-06,Boston,Full-time
442
+ 1118,David,Hall,David Hall,Sales,Sales Representative,61361,2023,2021-11-06,Boston,Full-time
443
+ 1118,David,Hall,David Hall,Sales,Sales Representative,73001,2024,2021-11-06,Boston,Full-time
444
+ 1119,Grace,Sanchez,Grace Sanchez,Sales,Sales Representative,65545,2022,2022-08-09,New York,Full-time
445
+ 1119,Grace,Sanchez,Grace Sanchez,Sales,Sales Representative,65111,2023,2022-08-09,New York,Full-time
446
+ 1119,Grace,Sanchez,Grace Sanchez,Sales,Sales Representative,70573,2024,2022-08-09,New York,Full-time
447
+ 1120,Ben,Sanchez,Ben Sanchez,Sales,Sales Representative,59608,2021,2021-07-11,San Francisco,Full-time
448
+ 1120,Ben,Sanchez,Ben Sanchez,Sales,Sales Representative,62480,2022,2021-07-11,San Francisco,Full-time
449
+ 1120,Ben,Sanchez,Ben Sanchez,Sales,Sales Representative,64479,2023,2021-07-11,San Francisco,Full-time
450
+ 1120,Ben,Sanchez,Ben Sanchez,Sales,Sales Representative,78064,2024,2021-07-11,San Francisco,Full-time
451
+ 1121,Laura,Wright,Laura Wright,Sales,Sales Representative,62589,2021,2020-06-04,New York,Full-time
452
+ 1121,Laura,Wright,Laura Wright,Sales,Sales Representative,67784,2022,2020-06-04,New York,Full-time
453
+ 1121,Laura,Wright,Laura Wright,Sales,Sales Representative,71671,2023,2020-06-04,New York,Full-time
454
+ 1121,Laura,Wright,Laura Wright,Sales,Sales Representative,74488,2024,2020-06-04,New York,Full-time
455
+ 1122,Wendy,Flores,Wendy Flores,Sales,Sales Representative,62850,2021,2021-05-21,Boston,Full-time
456
+ 1122,Wendy,Flores,Wendy Flores,Sales,Sales Representative,67934,2022,2021-05-21,Boston,Full-time
457
+ 1122,Wendy,Flores,Wendy Flores,Sales,Sales Representative,75431,2023,2021-05-21,Boston,Full-time
458
+ 1122,Wendy,Flores,Wendy Flores,Sales,Sales Representative,69715,2024,2021-05-21,Boston,Full-time
459
+ 1123,Carlos,Rodriguez,Carlos Rodriguez,Sales,Account Executive,115011,2021,2018-04-25,Seattle,Full-time
460
+ 1123,Carlos,Rodriguez,Carlos Rodriguez,Sales,Account Executive,96907,2022,2018-04-25,Seattle,Full-time
461
+ 1123,Carlos,Rodriguez,Carlos Rodriguez,Sales,Account Executive,115562,2023,2018-04-25,Seattle,Full-time
462
+ 1123,Carlos,Rodriguez,Carlos Rodriguez,Sales,Account Executive,114238,2024,2018-04-25,Seattle,Full-time
463
+ 1124,Ivan,King,Ivan King,Sales,Account Executive,88446,2021,2020-07-11,Seattle,Full-time
464
+ 1124,Ivan,King,Ivan King,Sales,Account Executive,104451,2022,2020-07-11,Seattle,Full-time
465
+ 1124,Ivan,King,Ivan King,Sales,Account Executive,107355,2023,2020-07-11,Seattle,Full-time
466
+ 1124,Ivan,King,Ivan King,Sales,Account Executive,103566,2024,2020-07-11,Seattle,Full-time
467
+ 1125,Clara,Wilson,Clara Wilson,Sales,Account Executive,98150,2022,2022-05-23,Chicago,Full-time
468
+ 1125,Clara,Wilson,Clara Wilson,Sales,Account Executive,104182,2023,2022-05-23,Chicago,Full-time
469
+ 1125,Clara,Wilson,Clara Wilson,Sales,Account Executive,93429,2024,2022-05-23,Chicago,Full-time
470
+ 1126,Rosa,Lee,Rosa Lee,Sales,Account Executive,92125,2021,2020-12-03,Remote,Contract
471
+ 1126,Rosa,Lee,Rosa Lee,Sales,Account Executive,102948,2022,2020-12-03,Remote,Contract
472
+ 1126,Rosa,Lee,Rosa Lee,Sales,Account Executive,103806,2023,2020-12-03,Remote,Contract
473
+ 1126,Rosa,Lee,Rosa Lee,Sales,Account Executive,104778,2024,2020-12-03,Remote,Contract
474
+ 1127,Michael,Rodriguez,Michael Rodriguez,Sales,Account Executive,102219,2021,2019-08-01,Austin,Contract
475
+ 1127,Michael,Rodriguez,Michael Rodriguez,Sales,Account Executive,106993,2022,2019-08-01,Austin,Contract
476
+ 1127,Michael,Rodriguez,Michael Rodriguez,Sales,Account Executive,111828,2023,2019-08-01,Austin,Contract
477
+ 1127,Michael,Rodriguez,Michael Rodriguez,Sales,Account Executive,122092,2024,2019-08-01,Austin,Contract
478
+ 1128,Elena,King,Elena King,Sales,Account Executive,88506,2021,2021-07-27,Remote,Full-time
479
+ 1128,Elena,King,Elena King,Sales,Account Executive,94258,2022,2021-07-27,Remote,Full-time
480
+ 1128,Elena,King,Elena King,Sales,Account Executive,94885,2023,2021-07-27,Remote,Full-time
481
+ 1128,Elena,King,Elena King,Sales,Account Executive,114053,2024,2021-07-27,Remote,Full-time
482
+ 1129,Laura,Roberts,Laura Roberts,Sales,Senior Account Executive,135169,2021,2019-07-17,Boston,Full-time
483
+ 1129,Laura,Roberts,Laura Roberts,Sales,Senior Account Executive,125060,2022,2019-07-17,Boston,Full-time
484
+ 1129,Laura,Roberts,Laura Roberts,Sales,Senior Account Executive,149178,2023,2019-07-17,Boston,Full-time
485
+ 1129,Laura,Roberts,Laura Roberts,Sales,Senior Account Executive,170898,2024,2019-07-17,Boston,Full-time
486
+ 1130,Sam,Garcia,Sam Garcia,Sales,Senior Account Executive,116853,2021,2020-04-21,Remote,Full-time
487
+ 1130,Sam,Garcia,Sam Garcia,Sales,Senior Account Executive,131038,2022,2020-04-21,Remote,Full-time
488
+ 1130,Sam,Garcia,Sam Garcia,Sales,Senior Account Executive,142724,2023,2020-04-21,Remote,Full-time
489
+ 1130,Sam,Garcia,Sam Garcia,Sales,Senior Account Executive,140253,2024,2020-04-21,Remote,Full-time
490
+ 1131,Uri,Hill,Uri Hill,Sales,Senior Account Executive,131963,2021,2020-10-02,Boston,Full-time
491
+ 1131,Uri,Hill,Uri Hill,Sales,Senior Account Executive,127752,2022,2020-10-02,Boston,Full-time
492
+ 1131,Uri,Hill,Uri Hill,Sales,Senior Account Executive,134021,2023,2020-10-02,Boston,Full-time
493
+ 1131,Uri,Hill,Uri Hill,Sales,Senior Account Executive,134909,2024,2020-10-02,Boston,Full-time
494
+ 1132,Olivia,Wright,Olivia Wright,Sales,Senior Account Executive,130092,2021,2020-11-10,Chicago,Full-time
495
+ 1132,Olivia,Wright,Olivia Wright,Sales,Senior Account Executive,117340,2022,2020-11-10,Chicago,Full-time
496
+ 1132,Olivia,Wright,Olivia Wright,Sales,Senior Account Executive,127767,2023,2020-11-10,Chicago,Full-time
497
+ 1132,Olivia,Wright,Olivia Wright,Sales,Senior Account Executive,136472,2024,2020-11-10,Chicago,Full-time
498
+ 1133,Maya,Martinez,Maya Martinez,Sales,Senior Account Executive,117378,2021,2020-12-11,Seattle,Full-time
499
+ 1133,Maya,Martinez,Maya Martinez,Sales,Senior Account Executive,130519,2022,2020-12-11,Seattle,Full-time
500
+ 1133,Maya,Martinez,Maya Martinez,Sales,Senior Account Executive,133344,2023,2020-12-11,Seattle,Full-time
501
+ 1133,Maya,Martinez,Maya Martinez,Sales,Senior Account Executive,132142,2024,2020-12-11,Seattle,Full-time
502
+ 1134,George,Brown,George Brown,Sales,Senior Account Executive,131033,2021,2020-07-28,Remote,Full-time
503
+ 1134,George,Brown,George Brown,Sales,Senior Account Executive,122104,2022,2020-07-28,Remote,Full-time
504
+ 1134,George,Brown,George Brown,Sales,Senior Account Executive,134151,2023,2020-07-28,Remote,Full-time
505
+ 1134,George,Brown,George Brown,Sales,Senior Account Executive,152647,2024,2020-07-28,Remote,Full-time
506
+ 1135,Grace,Robinson,Grace Robinson,Sales,Senior Account Executive,117425,2021,2021-05-16,New York,Full-time
507
+ 1135,Grace,Robinson,Grace Robinson,Sales,Senior Account Executive,119423,2022,2021-05-16,New York,Full-time
508
+ 1135,Grace,Robinson,Grace Robinson,Sales,Senior Account Executive,117397,2023,2021-05-16,New York,Full-time
509
+ 1135,Grace,Robinson,Grace Robinson,Sales,Senior Account Executive,147957,2024,2021-05-16,New York,Full-time
510
+ 1136,Rosa,Walker,Rosa Walker,Sales,Sales Manager,149891,2021,2020-09-01,Boston,Full-time
511
+ 1136,Rosa,Walker,Rosa Walker,Sales,Sales Manager,158588,2022,2020-09-01,Boston,Full-time
512
+ 1136,Rosa,Walker,Rosa Walker,Sales,Sales Manager,149777,2023,2020-09-01,Boston,Full-time
513
+ 1136,Rosa,Walker,Rosa Walker,Sales,Sales Manager,156501,2024,2020-09-01,Boston,Full-time
514
+ 1137,James,Jackson,James Jackson,Sales,Sales Manager,165347,2021,2018-07-17,Chicago,Contract
515
+ 1137,James,Jackson,James Jackson,Sales,Sales Manager,157255,2022,2018-07-17,Chicago,Contract
516
+ 1137,James,Jackson,James Jackson,Sales,Sales Manager,189681,2023,2018-07-17,Chicago,Contract
517
+ 1137,James,Jackson,James Jackson,Sales,Sales Manager,192442,2024,2018-07-17,Chicago,Contract
518
+ 1138,Xavier,Carter,Xavier Carter,Sales,Sales Manager,134429,2021,2019-04-20,Remote,Full-time
519
+ 1138,Xavier,Carter,Xavier Carter,Sales,Sales Manager,142967,2022,2019-04-20,Remote,Full-time
520
+ 1138,Xavier,Carter,Xavier Carter,Sales,Sales Manager,162073,2023,2019-04-20,Remote,Full-time
521
+ 1138,Xavier,Carter,Xavier Carter,Sales,Sales Manager,178251,2024,2019-04-20,Remote,Full-time
522
+ 1139,Uma,Flores,Uma Flores,Sales,Sales Manager,140715,2021,2020-03-13,Remote,Full-time
523
+ 1139,Uma,Flores,Uma Flores,Sales,Sales Manager,147428,2022,2020-03-13,Remote,Full-time
524
+ 1139,Uma,Flores,Uma Flores,Sales,Sales Manager,156328,2023,2020-03-13,Remote,Full-time
525
+ 1139,Uma,Flores,Uma Flores,Sales,Sales Manager,144770,2024,2020-03-13,Remote,Full-time
526
+ 1140,Hannah,Clark,Hannah Clark,Sales,Sales Manager,126503,2022,2022-05-26,Seattle,Full-time
527
+ 1140,Hannah,Clark,Hannah Clark,Sales,Sales Manager,153968,2023,2022-05-26,Seattle,Full-time
528
+ 1140,Hannah,Clark,Hannah Clark,Sales,Sales Manager,140743,2024,2022-05-26,Seattle,Full-time
529
+ 1141,Diana,Nguyen,Diana Nguyen,Sales,Sales Manager,129484,2021,2021-03-17,Seattle,Contract
530
+ 1141,Diana,Nguyen,Diana Nguyen,Sales,Sales Manager,134846,2022,2021-03-17,Seattle,Contract
531
+ 1141,Diana,Nguyen,Diana Nguyen,Sales,Sales Manager,154446,2023,2021-03-17,Seattle,Contract
532
+ 1141,Diana,Nguyen,Diana Nguyen,Sales,Sales Manager,147236,2024,2021-03-17,Seattle,Contract
533
+ 1142,Amelia,Martinez,Amelia Martinez,Sales,Sales Manager,143533,2021,2021-12-07,Chicago,Contract
534
+ 1142,Amelia,Martinez,Amelia Martinez,Sales,Sales Manager,148948,2022,2021-12-07,Chicago,Contract
535
+ 1142,Amelia,Martinez,Amelia Martinez,Sales,Sales Manager,131483,2023,2021-12-07,Chicago,Contract
536
+ 1142,Amelia,Martinez,Amelia Martinez,Sales,Sales Manager,144192,2024,2021-12-07,Chicago,Contract
537
+ 1143,Qian,Walker,Qian Walker,Sales,Sales Manager,128500,2022,2022-07-11,San Francisco,Full-time
538
+ 1143,Qian,Walker,Qian Walker,Sales,Sales Manager,146336,2023,2022-07-11,San Francisco,Full-time
539
+ 1143,Qian,Walker,Qian Walker,Sales,Sales Manager,154928,2024,2022-07-11,San Francisco,Full-time
540
+ 1144,Quinn,Flores,Quinn Flores,Sales,VP of Sales,199493,2021,2021-04-08,Austin,Contract
541
+ 1144,Quinn,Flores,Quinn Flores,Sales,VP of Sales,208659,2022,2021-04-08,Austin,Contract
542
+ 1144,Quinn,Flores,Quinn Flores,Sales,VP of Sales,216111,2023,2021-04-08,Austin,Contract
543
+ 1144,Quinn,Flores,Quinn Flores,Sales,VP of Sales,214401,2024,2021-04-08,Austin,Contract
544
+ 1145,James,Campbell,James Campbell,Sales,VP of Sales,210726,2021,2020-05-04,Remote,Contract
545
+ 1145,James,Campbell,James Campbell,Sales,VP of Sales,229334,2022,2020-05-04,Remote,Contract
546
+ 1145,James,Campbell,James Campbell,Sales,VP of Sales,215816,2023,2020-05-04,Remote,Contract
547
+ 1145,James,Campbell,James Campbell,Sales,VP of Sales,227600,2024,2020-05-04,Remote,Contract
548
+ 1146,Wendy,Lewis,Wendy Lewis,Sales,VP of Sales,187881,2021,2020-12-16,San Francisco,Full-time
549
+ 1146,Wendy,Lewis,Wendy Lewis,Sales,VP of Sales,196349,2022,2020-12-16,San Francisco,Full-time
550
+ 1146,Wendy,Lewis,Wendy Lewis,Sales,VP of Sales,213460,2023,2020-12-16,San Francisco,Full-time
551
+ 1146,Wendy,Lewis,Wendy Lewis,Sales,VP of Sales,197350,2024,2020-12-16,San Francisco,Full-time
552
+ 1147,Henry,Anderson,Henry Anderson,Sales,VP of Sales,192246,2021,2019-01-04,Chicago,Full-time
553
+ 1147,Henry,Anderson,Henry Anderson,Sales,VP of Sales,202264,2022,2019-01-04,Chicago,Full-time
554
+ 1147,Henry,Anderson,Henry Anderson,Sales,VP of Sales,248947,2023,2019-01-04,Chicago,Full-time
555
+ 1147,Henry,Anderson,Henry Anderson,Sales,VP of Sales,254731,2024,2019-01-04,Chicago,Full-time
556
+ 1148,Elena,Walker,Elena Walker,Sales,VP of Sales,195237,2021,2019-05-11,Austin,Full-time
557
+ 1148,Elena,Walker,Elena Walker,Sales,VP of Sales,219372,2022,2019-05-11,Austin,Full-time
558
+ 1148,Elena,Walker,Elena Walker,Sales,VP of Sales,257533,2023,2019-05-11,Austin,Full-time
559
+ 1148,Elena,Walker,Elena Walker,Sales,VP of Sales,247548,2024,2019-05-11,Austin,Full-time
560
+ 1149,Laura,Williams,Laura Williams,Sales,VP of Sales,165933,2021,2021-08-06,Seattle,Full-time
561
+ 1149,Laura,Williams,Laura Williams,Sales,VP of Sales,179359,2022,2021-08-06,Seattle,Full-time
562
+ 1149,Laura,Williams,Laura Williams,Sales,VP of Sales,204781,2023,2021-08-06,Seattle,Full-time
563
+ 1149,Laura,Williams,Laura Williams,Sales,VP of Sales,232893,2024,2021-08-06,Seattle,Full-time
564
+ 1150,Frank,Rodriguez,Frank Rodriguez,Sales,VP of Sales,191920,2022,2022-08-09,San Francisco,Full-time
565
+ 1150,Frank,Rodriguez,Frank Rodriguez,Sales,VP of Sales,203419,2023,2022-08-09,San Francisco,Full-time
566
+ 1150,Frank,Rodriguez,Frank Rodriguez,Sales,VP of Sales,188818,2024,2022-08-09,San Francisco,Full-time
567
+ 1151,Sam,Torres,Sam Torres,Sales,VP of Sales,211365,2021,2019-03-20,Boston,Full-time
568
+ 1151,Sam,Torres,Sam Torres,Sales,VP of Sales,209912,2022,2019-03-20,Boston,Full-time
569
+ 1151,Sam,Torres,Sam Torres,Sales,VP of Sales,199066,2023,2019-03-20,Boston,Full-time
570
+ 1151,Sam,Torres,Sam Torres,Sales,VP of Sales,218726,2024,2019-03-20,Boston,Full-time
571
+ 1152,Yara,Thomas,Yara Thomas,Finance,Financial Analyst,71938,2021,2021-05-11,Austin,Contract
572
+ 1152,Yara,Thomas,Yara Thomas,Finance,Financial Analyst,87742,2022,2021-05-11,Austin,Contract
573
+ 1152,Yara,Thomas,Yara Thomas,Finance,Financial Analyst,78558,2023,2021-05-11,Austin,Contract
574
+ 1152,Yara,Thomas,Yara Thomas,Finance,Financial Analyst,89194,2024,2021-05-11,Austin,Contract
575
+ 1153,Grace,Rivera,Grace Rivera,Finance,Financial Analyst,78843,2021,2020-12-04,Seattle,Full-time
576
+ 1153,Grace,Rivera,Grace Rivera,Finance,Financial Analyst,92037,2022,2020-12-04,Seattle,Full-time
577
+ 1153,Grace,Rivera,Grace Rivera,Finance,Financial Analyst,101723,2023,2020-12-04,Seattle,Full-time
578
+ 1153,Grace,Rivera,Grace Rivera,Finance,Financial Analyst,100030,2024,2020-12-04,Seattle,Full-time
579
+ 1154,Elena,Carter,Elena Carter,Finance,Financial Analyst,81054,2022,2022-11-27,San Francisco,Full-time
580
+ 1154,Elena,Carter,Elena Carter,Finance,Financial Analyst,85504,2023,2022-11-27,San Francisco,Full-time
581
+ 1154,Elena,Carter,Elena Carter,Finance,Financial Analyst,86382,2024,2022-11-27,San Francisco,Full-time
582
+ 1155,Kate,Davis,Kate Davis,Finance,Financial Analyst,87733,2021,2018-09-17,San Francisco,Contract
583
+ 1155,Kate,Davis,Kate Davis,Finance,Financial Analyst,104151,2022,2018-09-17,San Francisco,Contract
584
+ 1155,Kate,Davis,Kate Davis,Finance,Financial Analyst,113115,2023,2018-09-17,San Francisco,Contract
585
+ 1155,Kate,Davis,Kate Davis,Finance,Financial Analyst,117905,2024,2018-09-17,San Francisco,Contract
586
+ 1156,Clara,Brown,Clara Brown,Finance,Financial Analyst,80477,2021,2021-03-17,Chicago,Full-time
587
+ 1156,Clara,Brown,Clara Brown,Finance,Financial Analyst,81440,2022,2021-03-17,Chicago,Full-time
588
+ 1156,Clara,Brown,Clara Brown,Finance,Financial Analyst,80511,2023,2021-03-17,Chicago,Full-time
589
+ 1156,Clara,Brown,Clara Brown,Finance,Financial Analyst,82164,2024,2021-03-17,Chicago,Full-time
590
+ 1157,Carlos,Ramirez,Carlos Ramirez,Finance,Senior Financial Analyst,105572,2021,2020-12-03,Remote,Full-time
591
+ 1157,Carlos,Ramirez,Carlos Ramirez,Finance,Senior Financial Analyst,112756,2022,2020-12-03,Remote,Full-time
592
+ 1157,Carlos,Ramirez,Carlos Ramirez,Finance,Senior Financial Analyst,130685,2023,2020-12-03,Remote,Full-time
593
+ 1157,Carlos,Ramirez,Carlos Ramirez,Finance,Senior Financial Analyst,152574,2024,2020-12-03,Remote,Full-time
594
+ 1158,Paul,Clark,Paul Clark,Finance,Senior Financial Analyst,116349,2021,2020-07-15,Boston,Full-time
595
+ 1158,Paul,Clark,Paul Clark,Finance,Senior Financial Analyst,121972,2022,2020-07-15,Boston,Full-time
596
+ 1158,Paul,Clark,Paul Clark,Finance,Senior Financial Analyst,124690,2023,2020-07-15,Boston,Full-time
597
+ 1158,Paul,Clark,Paul Clark,Finance,Senior Financial Analyst,125685,2024,2020-07-15,Boston,Full-time
598
+ 1159,Henry,Rodriguez,Henry Rodriguez,Finance,Senior Financial Analyst,123890,2021,2019-01-25,New York,Full-time
599
+ 1159,Henry,Rodriguez,Henry Rodriguez,Finance,Senior Financial Analyst,121464,2022,2019-01-25,New York,Full-time
600
+ 1159,Henry,Rodriguez,Henry Rodriguez,Finance,Senior Financial Analyst,125035,2023,2019-01-25,New York,Full-time
601
+ 1159,Henry,Rodriguez,Henry Rodriguez,Finance,Senior Financial Analyst,121030,2024,2019-01-25,New York,Full-time
602
+ 1160,Will,Davis,Will Davis,Finance,Finance Manager,137303,2021,2018-11-14,Remote,Full-time
603
+ 1160,Will,Davis,Will Davis,Finance,Finance Manager,165457,2022,2018-11-14,Remote,Full-time
604
+ 1160,Will,Davis,Will Davis,Finance,Finance Manager,193655,2023,2018-11-14,Remote,Full-time
605
+ 1160,Will,Davis,Will Davis,Finance,Finance Manager,154769,2024,2018-11-14,Remote,Full-time
606
+ 1161,Clara,Anderson,Clara Anderson,Finance,Finance Manager,145430,2022,2022-04-25,Boston,Full-time
607
+ 1161,Clara,Anderson,Clara Anderson,Finance,Finance Manager,149408,2023,2022-04-25,Boston,Full-time
608
+ 1161,Clara,Anderson,Clara Anderson,Finance,Finance Manager,150911,2024,2022-04-25,Boston,Full-time
609
+ 1162,Xena,Baker,Xena Baker,Finance,Finance Manager,132643,2021,2020-04-10,San Francisco,Contract
610
+ 1162,Xena,Baker,Xena Baker,Finance,Finance Manager,153954,2022,2020-04-10,San Francisco,Contract
611
+ 1162,Xena,Baker,Xena Baker,Finance,Finance Manager,177518,2023,2020-04-10,San Francisco,Contract
612
+ 1162,Xena,Baker,Xena Baker,Finance,Finance Manager,165825,2024,2020-04-10,San Francisco,Contract
613
+ 1163,Frank,Brown,Frank Brown,Finance,Finance Manager,136415,2021,2020-11-22,Chicago,Contract
614
+ 1163,Frank,Brown,Frank Brown,Finance,Finance Manager,139263,2022,2020-11-22,Chicago,Contract
615
+ 1163,Frank,Brown,Frank Brown,Finance,Finance Manager,160566,2023,2020-11-22,Chicago,Contract
616
+ 1163,Frank,Brown,Frank Brown,Finance,Finance Manager,168566,2024,2020-11-22,Chicago,Contract
617
+ 1164,Tara,Martinez,Tara Martinez,Finance,Finance Manager,123086,2021,2021-01-18,Chicago,Full-time
618
+ 1164,Tara,Martinez,Tara Martinez,Finance,Finance Manager,130149,2022,2021-01-18,Chicago,Full-time
619
+ 1164,Tara,Martinez,Tara Martinez,Finance,Finance Manager,162035,2023,2021-01-18,Chicago,Full-time
620
+ 1164,Tara,Martinez,Tara Martinez,Finance,Finance Manager,150449,2024,2021-01-18,Chicago,Full-time
621
+ 1165,Uri,Gonzalez,Uri Gonzalez,Finance,Finance Manager,169568,2021,2018-05-13,Seattle,Contract
622
+ 1165,Uri,Gonzalez,Uri Gonzalez,Finance,Finance Manager,162712,2022,2018-05-13,Seattle,Contract
623
+ 1165,Uri,Gonzalez,Uri Gonzalez,Finance,Finance Manager,184820,2023,2018-05-13,Seattle,Contract
624
+ 1165,Uri,Gonzalez,Uri Gonzalez,Finance,Finance Manager,194934,2024,2018-05-13,Seattle,Contract
625
+ 1166,Victor,Martin,Victor Martin,Finance,Finance Manager,169274,2021,2018-04-07,Seattle,Full-time
626
+ 1166,Victor,Martin,Victor Martin,Finance,Finance Manager,184370,2022,2018-04-07,Seattle,Full-time
627
+ 1166,Victor,Martin,Victor Martin,Finance,Finance Manager,178148,2023,2018-04-07,Seattle,Full-time
628
+ 1166,Victor,Martin,Victor Martin,Finance,Finance Manager,163758,2024,2018-04-07,Seattle,Full-time
629
+ 1167,Sam,Harris,Sam Harris,Finance,Finance Manager,132933,2021,2021-09-21,Austin,Full-time
630
+ 1167,Sam,Harris,Sam Harris,Finance,Finance Manager,128866,2022,2021-09-21,Austin,Full-time
631
+ 1167,Sam,Harris,Sam Harris,Finance,Finance Manager,153473,2023,2021-09-21,Austin,Full-time
632
+ 1167,Sam,Harris,Sam Harris,Finance,Finance Manager,176617,2024,2021-09-21,Austin,Full-time
633
+ 1168,Uma,Clark,Uma Clark,Finance,CFO,282223,2021,2018-10-28,San Francisco,Full-time
634
+ 1168,Uma,Clark,Uma Clark,Finance,CFO,334808,2022,2018-10-28,San Francisco,Full-time
635
+ 1168,Uma,Clark,Uma Clark,Finance,CFO,298502,2023,2018-10-28,San Francisco,Full-time
636
+ 1168,Uma,Clark,Uma Clark,Finance,CFO,329914,2024,2018-10-28,San Francisco,Full-time
637
+ 1169,Priya,Young,Priya Young,Finance,CFO,254431,2022,2022-11-22,Austin,Full-time
638
+ 1169,Priya,Young,Priya Young,Finance,CFO,284647,2023,2022-11-22,Austin,Full-time
639
+ 1169,Priya,Young,Priya Young,Finance,CFO,295674,2024,2022-11-22,Austin,Full-time
640
+ 1170,Wendy,Hernandez,Wendy Hernandez,Finance,CFO,297586,2021,2019-12-18,Chicago,Full-time
641
+ 1170,Wendy,Hernandez,Wendy Hernandez,Finance,CFO,279075,2022,2019-12-18,Chicago,Full-time
642
+ 1170,Wendy,Hernandez,Wendy Hernandez,Finance,CFO,308533,2023,2019-12-18,Chicago,Full-time
643
+ 1170,Wendy,Hernandez,Wendy Hernandez,Finance,CFO,382151,2024,2019-12-18,Chicago,Full-time
644
+ 1171,Will,Smith,Will Smith,Finance,CFO,237551,2021,2021-03-27,Seattle,Full-time
645
+ 1171,Will,Smith,Will Smith,Finance,CFO,263149,2022,2021-03-27,Seattle,Full-time
646
+ 1171,Will,Smith,Will Smith,Finance,CFO,279468,2023,2021-03-27,Seattle,Full-time
647
+ 1171,Will,Smith,Will Smith,Finance,CFO,344046,2024,2021-03-27,Seattle,Full-time
648
+ 1172,Qian,Young,Qian Young,Finance,CFO,280736,2021,2018-01-18,Remote,Full-time
649
+ 1172,Qian,Young,Qian Young,Finance,CFO,330957,2022,2018-01-18,Remote,Full-time
650
+ 1172,Qian,Young,Qian Young,Finance,CFO,315074,2023,2018-01-18,Remote,Full-time
651
+ 1172,Qian,Young,Qian Young,Finance,CFO,391542,2024,2018-01-18,Remote,Full-time
652
+ 1173,George,Miller,George Miller,HR,HR Coordinator,56318,2022,2022-03-08,San Francisco,Contract
653
+ 1173,George,Miller,George Miller,HR,HR Coordinator,54221,2023,2022-03-08,San Francisco,Contract
654
+ 1173,George,Miller,George Miller,HR,HR Coordinator,57251,2024,2022-03-08,San Francisco,Contract
655
+ 1174,Kate,Thomas,Kate Thomas,HR,HR Coordinator,64105,2021,2019-05-22,Boston,Full-time
656
+ 1174,Kate,Thomas,Kate Thomas,HR,HR Coordinator,59459,2022,2019-05-22,Boston,Full-time
657
+ 1174,Kate,Thomas,Kate Thomas,HR,HR Coordinator,64879,2023,2019-05-22,Boston,Full-time
658
+ 1174,Kate,Thomas,Kate Thomas,HR,HR Coordinator,56334,2024,2019-05-22,Boston,Full-time
659
+ 1175,Kevin,Garcia,Kevin Garcia,HR,HR Coordinator,56762,2021,2021-07-21,Boston,Full-time
660
+ 1175,Kevin,Garcia,Kevin Garcia,HR,HR Coordinator,55187,2022,2021-07-21,Boston,Full-time
661
+ 1175,Kevin,Garcia,Kevin Garcia,HR,HR Coordinator,53305,2023,2021-07-21,Boston,Full-time
662
+ 1175,Kevin,Garcia,Kevin Garcia,HR,HR Coordinator,70583,2024,2021-07-21,Boston,Full-time
663
+ 1176,Elena,Moore,Elena Moore,HR,HR Coordinator,57089,2021,2018-02-22,Austin,Contract
664
+ 1176,Elena,Moore,Elena Moore,HR,HR Coordinator,68622,2022,2018-02-22,Austin,Contract
665
+ 1176,Elena,Moore,Elena Moore,HR,HR Coordinator,78558,2023,2018-02-22,Austin,Contract
666
+ 1176,Elena,Moore,Elena Moore,HR,HR Coordinator,81814,2024,2018-02-22,Austin,Contract
667
+ 1177,Ethan,Martin,Ethan Martin,HR,HR Manager,93087,2021,2019-10-08,Remote,Full-time
668
+ 1177,Ethan,Martin,Ethan Martin,HR,HR Manager,98674,2022,2019-10-08,Remote,Full-time
669
+ 1177,Ethan,Martin,Ethan Martin,HR,HR Manager,110734,2023,2019-10-08,Remote,Full-time
670
+ 1177,Ethan,Martin,Ethan Martin,HR,HR Manager,101051,2024,2019-10-08,Remote,Full-time
671
+ 1178,Wendy,Brown,Wendy Brown,HR,HR Manager,98603,2021,2018-07-08,Boston,Full-time
672
+ 1178,Wendy,Brown,Wendy Brown,HR,HR Manager,107860,2022,2018-07-08,Boston,Full-time
673
+ 1178,Wendy,Brown,Wendy Brown,HR,HR Manager,103252,2023,2018-07-08,Boston,Full-time
674
+ 1178,Wendy,Brown,Wendy Brown,HR,HR Manager,115638,2024,2018-07-08,Boston,Full-time
675
+ 1179,Frank,Anderson,Frank Anderson,HR,HR Manager,89556,2021,2020-09-13,Chicago,Full-time
676
+ 1179,Frank,Anderson,Frank Anderson,HR,HR Manager,89321,2022,2020-09-13,Chicago,Full-time
677
+ 1179,Frank,Anderson,Frank Anderson,HR,HR Manager,104112,2023,2020-09-13,Chicago,Full-time
678
+ 1179,Frank,Anderson,Frank Anderson,HR,HR Manager,86986,2024,2020-09-13,Chicago,Full-time
679
+ 1180,Tara,Green,Tara Green,HR,HR Manager,78981,2021,2019-12-13,Austin,Full-time
680
+ 1180,Tara,Green,Tara Green,HR,HR Manager,90668,2022,2019-12-13,Austin,Full-time
681
+ 1180,Tara,Green,Tara Green,HR,HR Manager,89776,2023,2019-12-13,Austin,Full-time
682
+ 1180,Tara,Green,Tara Green,HR,HR Manager,97985,2024,2019-12-13,Austin,Full-time
683
+ 1181,James,Allen,James Allen,HR,HR Manager,83150,2021,2021-02-01,New York,Full-time
684
+ 1181,James,Allen,James Allen,HR,HR Manager,93470,2022,2021-02-01,New York,Full-time
685
+ 1181,James,Allen,James Allen,HR,HR Manager,85208,2023,2021-02-01,New York,Full-time
686
+ 1181,James,Allen,James Allen,HR,HR Manager,104066,2024,2021-02-01,New York,Full-time
687
+ 1182,James,Thomas,James Thomas,HR,HR Manager,77902,2022,2022-09-06,Seattle,Full-time
688
+ 1182,James,Thomas,James Thomas,HR,HR Manager,79232,2023,2022-09-06,Seattle,Full-time
689
+ 1182,James,Thomas,James Thomas,HR,HR Manager,84115,2024,2022-09-06,Seattle,Full-time
690
+ 1183,Elena,Jones,Elena Jones,HR,Senior HR Manager,106717,2021,2020-05-08,Seattle,Full-time
691
+ 1183,Elena,Jones,Elena Jones,HR,Senior HR Manager,110408,2022,2020-05-08,Seattle,Full-time
692
+ 1183,Elena,Jones,Elena Jones,HR,Senior HR Manager,129551,2023,2020-05-08,Seattle,Full-time
693
+ 1183,Elena,Jones,Elena Jones,HR,Senior HR Manager,143819,2024,2020-05-08,Seattle,Full-time
694
+ 1184,Victor,Lewis,Victor Lewis,HR,Senior HR Manager,107137,2021,2020-07-27,Boston,Contract
695
+ 1184,Victor,Lewis,Victor Lewis,HR,Senior HR Manager,117020,2022,2020-07-27,Boston,Contract
696
+ 1184,Victor,Lewis,Victor Lewis,HR,Senior HR Manager,133623,2023,2020-07-27,Boston,Contract
697
+ 1184,Victor,Lewis,Victor Lewis,HR,Senior HR Manager,138942,2024,2020-07-27,Boston,Contract
698
+ 1185,Steve,Green,Steve Green,HR,Senior HR Manager,113746,2021,2021-10-26,San Francisco,Full-time
699
+ 1185,Steve,Green,Steve Green,HR,Senior HR Manager,103906,2022,2021-10-26,San Francisco,Full-time
700
+ 1185,Steve,Green,Steve Green,HR,Senior HR Manager,122096,2023,2021-10-26,San Francisco,Full-time
701
+ 1185,Steve,Green,Steve Green,HR,Senior HR Manager,131088,2024,2021-10-26,San Francisco,Full-time
702
+ 1186,James,Johnson,James Johnson,HR,Senior HR Manager,98052,2021,2021-12-07,Chicago,Full-time
703
+ 1186,James,Johnson,James Johnson,HR,Senior HR Manager,121497,2022,2021-12-07,Chicago,Full-time
704
+ 1186,James,Johnson,James Johnson,HR,Senior HR Manager,112594,2023,2021-12-07,Chicago,Full-time
705
+ 1186,James,Johnson,James Johnson,HR,Senior HR Manager,116339,2024,2021-12-07,Chicago,Full-time
706
+ 1187,Julia,Rivera,Julia Rivera,HR,Senior HR Manager,105016,2021,2021-07-03,Chicago,Contract
707
+ 1187,Julia,Rivera,Julia Rivera,HR,Senior HR Manager,122342,2022,2021-07-03,Chicago,Contract
708
+ 1187,Julia,Rivera,Julia Rivera,HR,Senior HR Manager,122419,2023,2021-07-03,Chicago,Contract
709
+ 1187,Julia,Rivera,Julia Rivera,HR,Senior HR Manager,127422,2024,2021-07-03,Chicago,Contract
710
+ 1188,Maya,Green,Maya Green,HR,VP of People,186724,2021,2018-02-25,San Francisco,Full-time
711
+ 1188,Maya,Green,Maya Green,HR,VP of People,210428,2022,2018-02-25,San Francisco,Full-time
712
+ 1188,Maya,Green,Maya Green,HR,VP of People,241028,2023,2018-02-25,San Francisco,Full-time
713
+ 1188,Maya,Green,Maya Green,HR,VP of People,226921,2024,2018-02-25,San Francisco,Full-time
714
+ 1189,George,Smith,George Smith,HR,VP of People,200330,2021,2018-05-08,Remote,Contract
715
+ 1189,George,Smith,George Smith,HR,VP of People,186962,2022,2018-05-08,Remote,Contract
716
+ 1189,George,Smith,George Smith,HR,VP of People,218879,2023,2018-05-08,Remote,Contract
717
+ 1189,George,Smith,George Smith,HR,VP of People,221227,2024,2018-05-08,Remote,Contract
718
+ 1190,Bob,Walker,Bob Walker,HR,VP of People,209867,2021,2018-05-14,New York,Full-time
719
+ 1190,Bob,Walker,Bob Walker,HR,VP of People,190381,2022,2018-05-14,New York,Full-time
720
+ 1190,Bob,Walker,Bob Walker,HR,VP of People,229000,2023,2018-05-14,New York,Full-time
721
+ 1190,Bob,Walker,Bob Walker,HR,VP of People,198491,2024,2018-05-14,New York,Full-time
722
+ 1191,Uri,Hall,Uri Hall,HR,VP of People,150882,2021,2021-06-03,Austin,Full-time
723
+ 1191,Uri,Hall,Uri Hall,HR,VP of People,180103,2022,2021-06-03,Austin,Full-time
724
+ 1191,Uri,Hall,Uri Hall,HR,VP of People,172552,2023,2021-06-03,Austin,Full-time
725
+ 1191,Uri,Hall,Uri Hall,HR,VP of People,194825,2024,2021-06-03,Austin,Full-time
726
+ 1192,Laura,Scott,Laura Scott,HR,VP of People,173761,2021,2019-06-18,Chicago,Full-time
727
+ 1192,Laura,Scott,Laura Scott,HR,VP of People,188211,2022,2019-06-18,Chicago,Full-time
728
+ 1192,Laura,Scott,Laura Scott,HR,VP of People,181162,2023,2019-06-18,Chicago,Full-time
729
+ 1192,Laura,Scott,Laura Scott,HR,VP of People,206121,2024,2019-06-18,Chicago,Full-time
730
+ 1193,Leo,Ramirez,Leo Ramirez,HR,VP of People,169720,2021,2021-01-23,San Francisco,Full-time
731
+ 1193,Leo,Ramirez,Leo Ramirez,HR,VP of People,177239,2022,2021-01-23,San Francisco,Full-time
732
+ 1193,Leo,Ramirez,Leo Ramirez,HR,VP of People,188190,2023,2021-01-23,San Francisco,Full-time
733
+ 1193,Leo,Ramirez,Leo Ramirez,HR,VP of People,176835,2024,2021-01-23,San Francisco,Full-time
734
+ 1194,Hannah,Taylor,Hannah Taylor,HR,VP of People,159761,2021,2021-09-21,Austin,Contract
735
+ 1194,Hannah,Taylor,Hannah Taylor,HR,VP of People,164122,2022,2021-09-21,Austin,Contract
736
+ 1194,Hannah,Taylor,Hannah Taylor,HR,VP of People,169303,2023,2021-09-21,Austin,Contract
737
+ 1194,Hannah,Taylor,Hannah Taylor,HR,VP of People,207981,2024,2021-09-21,Austin,Contract
738
+ 1195,Leo,Garcia,Leo Garcia,Operations,Operations Analyst,74707,2021,2019-06-04,San Francisco,Full-time
739
+ 1195,Leo,Garcia,Leo Garcia,Operations,Operations Analyst,77896,2022,2019-06-04,San Francisco,Full-time
740
+ 1195,Leo,Garcia,Leo Garcia,Operations,Operations Analyst,91401,2023,2019-06-04,San Francisco,Full-time
741
+ 1195,Leo,Garcia,Leo Garcia,Operations,Operations Analyst,91387,2024,2019-06-04,San Francisco,Full-time
742
+ 1196,Iris,Hall,Iris Hall,Operations,Operations Analyst,73991,2021,2019-09-06,Chicago,Full-time
743
+ 1196,Iris,Hall,Iris Hall,Operations,Operations Analyst,75970,2022,2019-09-06,Chicago,Full-time
744
+ 1196,Iris,Hall,Iris Hall,Operations,Operations Analyst,77831,2023,2019-09-06,Chicago,Full-time
745
+ 1196,Iris,Hall,Iris Hall,Operations,Operations Analyst,90839,2024,2019-09-06,Chicago,Full-time
746
+ 1197,James,Allen,James Allen,Operations,Operations Analyst,70613,2021,2021-07-22,Chicago,Full-time
747
+ 1197,James,Allen,James Allen,Operations,Operations Analyst,75089,2022,2021-07-22,Chicago,Full-time
748
+ 1197,James,Allen,James Allen,Operations,Operations Analyst,77236,2023,2021-07-22,Chicago,Full-time
749
+ 1197,James,Allen,James Allen,Operations,Operations Analyst,74163,2024,2021-07-22,Chicago,Full-time
750
+ 1198,Sam,Hernandez,Sam Hernandez,Operations,Operations Analyst,65984,2021,2021-10-24,Boston,Full-time
751
+ 1198,Sam,Hernandez,Sam Hernandez,Operations,Operations Analyst,77938,2022,2021-10-24,Boston,Full-time
752
+ 1198,Sam,Hernandez,Sam Hernandez,Operations,Operations Analyst,79785,2023,2021-10-24,Boston,Full-time
753
+ 1198,Sam,Hernandez,Sam Hernandez,Operations,Operations Analyst,79859,2024,2021-10-24,Boston,Full-time
754
+ 1199,Uri,Lewis,Uri Lewis,Operations,Operations Analyst,78390,2022,2022-04-14,New York,Full-time
755
+ 1199,Uri,Lewis,Uri Lewis,Operations,Operations Analyst,72916,2023,2022-04-14,New York,Full-time
756
+ 1199,Uri,Lewis,Uri Lewis,Operations,Operations Analyst,80895,2024,2022-04-14,New York,Full-time
757
+ 1200,Hannah,Roberts,Hannah Roberts,Operations,Operations Analyst,86628,2021,2019-04-26,Seattle,Contract
758
+ 1200,Hannah,Roberts,Hannah Roberts,Operations,Operations Analyst,83962,2022,2019-04-26,Seattle,Contract
759
+ 1200,Hannah,Roberts,Hannah Roberts,Operations,Operations Analyst,95465,2023,2019-04-26,Seattle,Contract
760
+ 1200,Hannah,Roberts,Hannah Roberts,Operations,Operations Analyst,106475,2024,2019-04-26,Seattle,Contract
761
+ 1201,Kate,Thompson,Kate Thompson,Operations,Operations Analyst,74256,2022,2022-05-20,Remote,Full-time
762
+ 1201,Kate,Thompson,Kate Thompson,Operations,Operations Analyst,71172,2023,2022-05-20,Remote,Full-time
763
+ 1201,Kate,Thompson,Kate Thompson,Operations,Operations Analyst,90013,2024,2022-05-20,Remote,Full-time
764
+ 1202,George,Rodriguez,George Rodriguez,Operations,Operations Manager,94653,2021,2021-01-09,Boston,Full-time
765
+ 1202,George,Rodriguez,George Rodriguez,Operations,Operations Manager,102115,2022,2021-01-09,Boston,Full-time
766
+ 1202,George,Rodriguez,George Rodriguez,Operations,Operations Manager,118294,2023,2021-01-09,Boston,Full-time
767
+ 1202,George,Rodriguez,George Rodriguez,Operations,Operations Manager,109678,2024,2021-01-09,Boston,Full-time
768
+ 1203,Olivia,Moore,Olivia Moore,Operations,Operations Manager,106996,2021,2021-07-15,New York,Full-time
769
+ 1203,Olivia,Moore,Olivia Moore,Operations,Operations Manager,116637,2022,2021-07-15,New York,Full-time
770
+ 1203,Olivia,Moore,Olivia Moore,Operations,Operations Manager,112776,2023,2021-07-15,New York,Full-time
771
+ 1203,Olivia,Moore,Olivia Moore,Operations,Operations Manager,129938,2024,2021-07-15,New York,Full-time
772
+ 1204,Uri,Garcia,Uri Garcia,Operations,Operations Manager,107913,2021,2021-11-22,Seattle,Full-time
773
+ 1204,Uri,Garcia,Uri Garcia,Operations,Operations Manager,116917,2022,2021-11-22,Seattle,Full-time
774
+ 1204,Uri,Garcia,Uri Garcia,Operations,Operations Manager,116929,2023,2021-11-22,Seattle,Full-time
775
+ 1204,Uri,Garcia,Uri Garcia,Operations,Operations Manager,111826,2024,2021-11-22,Seattle,Full-time
776
+ 1205,James,Torres,James Torres,Operations,Operations Manager,123867,2021,2019-10-28,Chicago,Full-time
777
+ 1205,James,Torres,James Torres,Operations,Operations Manager,114981,2022,2019-10-28,Chicago,Full-time
778
+ 1205,James,Torres,James Torres,Operations,Operations Manager,121852,2023,2019-10-28,Chicago,Full-time
779
+ 1205,James,Torres,James Torres,Operations,Operations Manager,137551,2024,2019-10-28,Chicago,Full-time
780
+ 1206,David,Smith,David Smith,Operations,Operations Manager,110654,2021,2021-04-23,San Francisco,Full-time
781
+ 1206,David,Smith,David Smith,Operations,Operations Manager,109684,2022,2021-04-23,San Francisco,Full-time
782
+ 1206,David,Smith,David Smith,Operations,Operations Manager,108072,2023,2021-04-23,San Francisco,Full-time
783
+ 1206,David,Smith,David Smith,Operations,Operations Manager,118466,2024,2021-04-23,San Francisco,Full-time
784
+ 1207,Zach,Green,Zach Green,Operations,Operations Manager,98652,2021,2020-12-23,Boston,Full-time
785
+ 1207,Zach,Green,Zach Green,Operations,Operations Manager,103077,2022,2020-12-23,Boston,Full-time
786
+ 1207,Zach,Green,Zach Green,Operations,Operations Manager,114798,2023,2020-12-23,Boston,Full-time
787
+ 1207,Zach,Green,Zach Green,Operations,Operations Manager,125460,2024,2020-12-23,Boston,Full-time
788
+ 1208,Alice,Hall,Alice Hall,Operations,Operations Manager,101783,2021,2020-02-28,Chicago,Full-time
789
+ 1208,Alice,Hall,Alice Hall,Operations,Operations Manager,115700,2022,2020-02-28,Chicago,Full-time
790
+ 1208,Alice,Hall,Alice Hall,Operations,Operations Manager,110203,2023,2020-02-28,Chicago,Full-time
791
+ 1208,Alice,Hall,Alice Hall,Operations,Operations Manager,118822,2024,2020-02-28,Chicago,Full-time
792
+ 1209,Will,Rodriguez,Will Rodriguez,Operations,Operations Manager,107163,2021,2019-02-17,Remote,Full-time
793
+ 1209,Will,Rodriguez,Will Rodriguez,Operations,Operations Manager,110659,2022,2019-02-17,Remote,Full-time
794
+ 1209,Will,Rodriguez,Will Rodriguez,Operations,Operations Manager,143314,2023,2019-02-17,Remote,Full-time
795
+ 1209,Will,Rodriguez,Will Rodriguez,Operations,Operations Manager,135469,2024,2019-02-17,Remote,Full-time
796
+ 1210,Fiona,Miller,Fiona Miller,Operations,Director of Operations,165580,2021,2019-02-19,Seattle,Full-time
797
+ 1210,Fiona,Miller,Fiona Miller,Operations,Director of Operations,177939,2022,2019-02-19,Seattle,Full-time
798
+ 1210,Fiona,Miller,Fiona Miller,Operations,Director of Operations,185171,2023,2019-02-19,Seattle,Full-time
799
+ 1210,Fiona,Miller,Fiona Miller,Operations,Director of Operations,213678,2024,2019-02-19,Seattle,Full-time
800
+ 1211,Sam,Roberts,Sam Roberts,Operations,Director of Operations,171268,2021,2018-11-10,San Francisco,Contract
801
+ 1211,Sam,Roberts,Sam Roberts,Operations,Director of Operations,191002,2022,2018-11-10,San Francisco,Contract
802
+ 1211,Sam,Roberts,Sam Roberts,Operations,Director of Operations,226093,2023,2018-11-10,San Francisco,Contract
803
+ 1211,Sam,Roberts,Sam Roberts,Operations,Director of Operations,191420,2024,2018-11-10,San Francisco,Contract
804
+ 1212,Priya,Young,Priya Young,Operations,Director of Operations,141959,2022,2022-02-17,New York,Full-time
805
+ 1212,Priya,Young,Priya Young,Operations,Director of Operations,166376,2023,2022-02-17,New York,Full-time
806
+ 1212,Priya,Young,Priya Young,Operations,Director of Operations,174158,2024,2022-02-17,New York,Full-time
807
+ 1213,Will,Walker,Will Walker,Operations,Director of Operations,157983,2021,2018-01-19,New York,Full-time
808
+ 1213,Will,Walker,Will Walker,Operations,Director of Operations,184116,2022,2018-01-19,New York,Full-time
809
+ 1213,Will,Walker,Will Walker,Operations,Director of Operations,205327,2023,2018-01-19,New York,Full-time
810
+ 1213,Will,Walker,Will Walker,Operations,Director of Operations,207526,2024,2018-01-19,New York,Full-time
utils/__init__.py ADDED
File without changes
utils/data_handler.py ADDED
@@ -0,0 +1,97 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Data loading, schema extraction, and safe code execution."""
2
+ import io
3
+ import traceback
4
+ import numpy as np
5
+ import pandas as pd
6
+
7
+
8
+ def load_dataframe(uploaded_file) -> tuple[pd.DataFrame, str]:
9
+ """Load a CSV or Excel file into a DataFrame. Returns (df, error_message)."""
10
+ try:
11
+ filename = uploaded_file.name.lower()
12
+ if filename.endswith(".csv"):
13
+ df = pd.read_csv(uploaded_file)
14
+ elif filename.endswith((".xlsx", ".xls")):
15
+ df = pd.read_excel(uploaded_file)
16
+ else:
17
+ return None, f"Unsupported file type: {uploaded_file.name}. Use CSV or Excel."
18
+ return df, None
19
+ except Exception as e:
20
+ return None, f"Failed to load file: {e}"
21
+
22
+
23
+ def get_schema_info(df: pd.DataFrame) -> str:
24
+ """Return a concise schema description for the LLM prompt."""
25
+ lines = [f"Shape: {df.shape[0]} rows × {df.shape[1]} columns", "", "Columns:"]
26
+ for col in df.columns:
27
+ dtype = str(df[col].dtype)
28
+ n_unique = df[col].nunique()
29
+ n_null = df[col].isnull().sum()
30
+ if df[col].dtype in [np.int64, np.float64, "int64", "float64"]:
31
+ stats = f"min={df[col].min():.0f}, max={df[col].max():.0f}, mean={df[col].mean():.0f}"
32
+ elif n_unique <= 20:
33
+ sample_vals = df[col].dropna().unique()[:8].tolist()
34
+ stats = f"values: {sample_vals}"
35
+ else:
36
+ sample_vals = df[col].dropna().unique()[:5].tolist()
37
+ stats = f"sample: {sample_vals}"
38
+ null_info = f", {n_null} nulls" if n_null > 0 else ""
39
+ lines.append(f" - {col} ({dtype}, {n_unique} unique{null_info}): {stats}")
40
+ return "\n".join(lines)
41
+
42
+
43
+ def get_sample_rows(df: pd.DataFrame, n: int = 5) -> str:
44
+ """Return a string representation of the first n rows."""
45
+ return df.head(n).to_string(index=False)
46
+
47
+
48
+ def _strip_imports(code: str) -> str:
49
+ """Remove import statements — pd and np are already in the namespace."""
50
+ lines = [
51
+ line for line in code.splitlines()
52
+ if not line.strip().startswith(("import ", "from "))
53
+ ]
54
+ return "\n".join(lines)
55
+
56
+
57
+ def execute_pandas_code(code: str, df: pd.DataFrame) -> tuple[pd.DataFrame, str]:
58
+ """
59
+ Execute pandas code in a restricted namespace.
60
+ Returns (result_df, error_message).
61
+ """
62
+ code = _strip_imports(code)
63
+ namespace = {
64
+ "df": df.copy(),
65
+ "pd": pd,
66
+ "np": np,
67
+ "__builtins__": {
68
+ "len": len,
69
+ "range": range,
70
+ "list": list,
71
+ "dict": dict,
72
+ "str": str,
73
+ "int": int,
74
+ "float": float,
75
+ "bool": bool,
76
+ "print": print,
77
+ "sorted": sorted,
78
+ "zip": zip,
79
+ "enumerate": enumerate,
80
+ "min": min,
81
+ "max": max,
82
+ "sum": sum,
83
+ "abs": abs,
84
+ "round": round,
85
+ "isinstance": isinstance,
86
+ },
87
+ }
88
+ try:
89
+ exec(code, namespace) # noqa: S102
90
+ result_df = namespace.get("result_df")
91
+ if result_df is None:
92
+ return None, "Code did not create 'result_df'. Make sure your code assigns a DataFrame to 'result_df'."
93
+ if not isinstance(result_df, pd.DataFrame):
94
+ return None, f"'result_df' must be a pandas DataFrame, got {type(result_df).__name__}."
95
+ return result_df, None
96
+ except Exception:
97
+ return None, f"Code execution error:\n{traceback.format_exc()}"
utils/llm_handler.py ADDED
@@ -0,0 +1,126 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Claude API integration for natural language → data analysis code generation."""
2
+ import json
3
+ import re
4
+ import anthropic
5
+
6
+ SYSTEM_PROMPT = """You are an expert data analyst AI assistant. Users ask questions about their dataset and you generate executable Python code to answer those questions with pandas and plotly visualizations.
7
+
8
+ CRITICAL: Respond with ONLY a valid JSON object — no markdown fences, no text before or after the JSON.
9
+
10
+ Response format:
11
+ {
12
+ "explanation": "Clear, concise explanation of what you analyzed and the key findings",
13
+ "pandas_code": "Python code using pandas. Variable 'df' is the input DataFrame. You MUST create 'result_df' as the output DataFrame.",
14
+ "viz_code": "Python plotly code that uses 'result_df' to create a variable called 'fig'. Use null if no chart is needed.",
15
+ "viz_type": "bar | line | pie | scatter | heatmap | table_only | null"
16
+ }
17
+
18
+ PANDAS CODE RULES:
19
+ - Input: df (pandas DataFrame with the user's data)
20
+ - Output: result_df (a pandas DataFrame — always required)
21
+ - Available imports: pandas as pd, numpy as np
22
+ - Use actual column names from the schema provided
23
+ - Handle missing values with .fillna() or .dropna() where needed
24
+ - For year-over-year comparisons: filter df['year'] == X
25
+ - For rankings: use .nlargest() or .sort_values().head()
26
+ - Keep result_df focused and readable (avoid too many columns)
27
+
28
+ VIZ CODE RULES:
29
+ - DO NOT include any import statements — px, go, pd, np are already available
30
+ - Input: result_df (the DataFrame produced by pandas_code)
31
+ - Output: fig (a plotly Figure)
32
+ - Always set a descriptive title
33
+ - Use color parameters for grouped charts
34
+ - For grouped bar charts comparing years: use px.bar with barmode='group'
35
+ - For time series: use px.line
36
+ - Make axis labels human-readable
37
+ - Set appropriate figure height (600-700px)
38
+
39
+ CHART SELECTION GUIDE:
40
+ - Comparing values across categories → bar chart
41
+ - Year-over-year comparison → grouped bar chart
42
+ - Trends over time → line chart
43
+ - Parts of a whole → pie chart
44
+ - Correlation between two numeric values → scatter chart
45
+ - Ranking / top N → horizontal bar chart
46
+
47
+ EXAMPLE for "top 5 highest paid employees in 2023":
48
+ pandas_code: "result_df = df[df['year'] == 2023].nlargest(5, 'salary')[['full_name', 'job_title', 'department', 'salary']].reset_index(drop=True)"
49
+ viz_code: "fig = px.bar(result_df, x='full_name', y='salary', color='department', title='Top 5 Highest Paid Employees (2023)', labels={'salary': 'Annual Salary ($)', 'full_name': 'Employee'}, height=500); fig.update_layout(xaxis_tickangle=-30)"
50
+ """
51
+
52
+
53
+ class LLMHandler:
54
+ def __init__(self):
55
+ self.client = anthropic.Anthropic()
56
+ self.conversation_history = []
57
+
58
+ def reset_conversation(self):
59
+ self.conversation_history = []
60
+
61
+ def generate_analysis(self, question: str, schema_info: str, sample_rows: str) -> dict:
62
+ user_message = f"""Dataset Schema:
63
+ {schema_info}
64
+
65
+ Sample data (first 5 rows):
66
+ {sample_rows}
67
+
68
+ User question: {question}
69
+
70
+ Generate the pandas + plotly code to answer this question. Remember: respond with ONLY the JSON object."""
71
+
72
+ self.conversation_history.append({"role": "user", "content": user_message})
73
+
74
+ response = self.client.messages.create(
75
+ model="claude-opus-4-6",
76
+ max_tokens=4096,
77
+ thinking={"type": "adaptive"},
78
+ system=SYSTEM_PROMPT,
79
+ messages=self.conversation_history,
80
+ )
81
+
82
+ raw_text = next(
83
+ (block.text for block in response.content if block.type == "text"), ""
84
+ )
85
+
86
+ self.conversation_history.append({"role": "assistant", "content": raw_text})
87
+
88
+ return self._parse_response(raw_text)
89
+
90
+ def _parse_response(self, raw_text: str) -> dict:
91
+ text = raw_text.strip()
92
+
93
+ # Strip markdown code fences if present
94
+ text = re.sub(r"^```(?:json)?\s*", "", text)
95
+ text = re.sub(r"\s*```$", "", text)
96
+ text = text.strip()
97
+
98
+ try:
99
+ result = json.loads(text)
100
+ except json.JSONDecodeError:
101
+ # Try to extract JSON object from the text
102
+ match = re.search(r"\{[\s\S]*\}", text)
103
+ if match:
104
+ try:
105
+ result = json.loads(match.group())
106
+ except json.JSONDecodeError:
107
+ result = {
108
+ "explanation": "Could not parse LLM response. Please try rephrasing your question.",
109
+ "pandas_code": "result_df = df.head(10)",
110
+ "viz_code": None,
111
+ "viz_type": "table_only",
112
+ }
113
+ else:
114
+ result = {
115
+ "explanation": raw_text,
116
+ "pandas_code": "result_df = df.head(10)",
117
+ "viz_code": None,
118
+ "viz_type": "table_only",
119
+ }
120
+
121
+ return {
122
+ "explanation": result.get("explanation", ""),
123
+ "pandas_code": result.get("pandas_code", "result_df = df.head(10)"),
124
+ "viz_code": result.get("viz_code"),
125
+ "viz_type": result.get("viz_type", "table_only"),
126
+ }
utils/viz_handler.py ADDED
@@ -0,0 +1,79 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Safe execution of LLM-generated Plotly visualization code."""
2
+ import traceback
3
+ import numpy as np
4
+ import pandas as pd
5
+ import plotly.express as px
6
+ import plotly.graph_objects as go
7
+
8
+
9
+ def _strip_imports(code: str) -> str:
10
+ """Remove import statements — px, go, pd, np are already in the namespace."""
11
+ lines = [
12
+ line for line in code.splitlines()
13
+ if not line.strip().startswith(("import ", "from "))
14
+ ]
15
+ return "\n".join(lines)
16
+
17
+
18
+ def execute_viz_code(code: str, result_df: pd.DataFrame):
19
+ """
20
+ Execute plotly visualization code in a restricted namespace.
21
+ Returns (fig, error_message).
22
+ """
23
+ if not code or code.strip().lower() in ("null", "none", ""):
24
+ return None, None
25
+
26
+ code = _strip_imports(code)
27
+
28
+ namespace = {
29
+ "result_df": result_df.copy(),
30
+ "pd": pd,
31
+ "np": np,
32
+ "px": px,
33
+ "go": go,
34
+ "__builtins__": {
35
+ "len": len,
36
+ "range": range,
37
+ "list": list,
38
+ "dict": dict,
39
+ "str": str,
40
+ "int": int,
41
+ "float": float,
42
+ "bool": bool,
43
+ "print": print,
44
+ "sorted": sorted,
45
+ "zip": zip,
46
+ "enumerate": enumerate,
47
+ "min": min,
48
+ "max": max,
49
+ "sum": sum,
50
+ "abs": abs,
51
+ "round": round,
52
+ "isinstance": isinstance,
53
+ },
54
+ }
55
+ try:
56
+ exec(code, namespace) # noqa: S102
57
+ fig = namespace.get("fig")
58
+ if fig is None:
59
+ return None, "Visualization code did not create 'fig'. Make sure your code assigns a Plotly figure to 'fig'."
60
+ return fig, None
61
+ except Exception:
62
+ return None, f"Visualization error:\n{traceback.format_exc()}"
63
+
64
+
65
+ def make_fallback_chart(result_df: pd.DataFrame, title: str = "Data Overview"):
66
+ """Generate a simple bar chart when LLM viz code fails."""
67
+ numeric_cols = result_df.select_dtypes(include=[np.number]).columns.tolist()
68
+ text_cols = result_df.select_dtypes(include=["object", "category"]).columns.tolist()
69
+
70
+ if numeric_cols and text_cols:
71
+ fig = px.bar(
72
+ result_df,
73
+ x=text_cols[0],
74
+ y=numeric_cols[0],
75
+ title=title,
76
+ height=500,
77
+ )
78
+ return fig
79
+ return None