Skip to content

Instantly share code, notes, and snippets.

@balpha
Created May 4, 2016 12:46
Show Gist options
  • Save balpha/c68b5195015e78704641dc6bdca140d4 to your computer and use it in GitHub Desktop.
Save balpha/c68b5195015e78704641dc6bdca140d4 to your computer and use it in GitHub Desktop.
Job title and company name generator
using System;
using System.Linq;
namespace FakeJobInfo
{
class Program
{
private static Func<int, int> rand = new Random().Next;
private static string MakeCompanyName(bool isStartup)
{
if (isStartup)
return MakeStartupName();
else
return MakeSeriousCompanyName();
}
private static string MakeSeriousCompanyName()
{
return GetRandomString(seriousCompanyNameParts1) + GetRandomString(seriousCompanyNameParts2) + GetRandomString(seriousCompanyNameParts3) + GetRandomString(seriousCompanyNameParts4);
}
private static readonly string[] seriousCompanyNameParts1 = new string[] {
"", "Global ", "International ", "National ", "Advanced ", "European ", "Specialized ", "Transatlantic ", "Modern ", "United ", "Synchronized "
};
private static readonly string[] seriousCompanyNameParts2 = new string[] {
"Data ", "Big Data ", "Finance ", "Mobile ", "Enterprise ", "Network ", "Development ", "Research ", "Information "
};
private static readonly string[] seriousCompanyNameParts3 = new string[] {
"Solutions", "Consultancy", "Services", "Innovations", "Applications", "Industries", "Technologies", "Exchange"
};
private static readonly string[] seriousCompanyNameParts4 = new string[] {
"", ", Inc.", " Co.", " GmbH", " Ltd.", " AB"
};
private static string MakeStartupName()
{
var s = string.Join("", Enumerable.Range(0, rand(3) + 1).Select((_) => MakeSyllable()));
return s[0].ToString().ToUpper() + s.Substring(1);
}
private static readonly string[] cons1 = new string[] {
"tw", "pl", "m", "p", "gl", "sh", "t", "n", "gr", "w", "fl", "th", "qu", "st", "v", "st", "h", "j", "z"
};
private static readonly string[] vow = new string[] {
"a", "e", "i", "o", "u", "y", "oo", "ai", "ee", "ou"
};
private static readonly string[] cons2 = new string[] {
"ng", "g", "n", "l", "p", "r", "ck", "m", "t", "f"
};
private static string MakeSyllable()
{
var c = rand(3) + 1;
var s = (c & 1) == 1 ? GetRandomString(cons1) : "";
s += GetRandomString(vow);
if ((c & 2) == 2)
s += GetRandomString(cons2);
if (rand(4) == 0)
s = s[0].ToString().ToUpper() + s.Substring(1);
return s;
}
private static string MakeJobTitle()
{
return GetRandomString(qualifiers) + GetRandomString(areas) + GetRandomString(titles);
}
private static readonly string[] qualifiers = new string[] {
"", "Senior ", "Junior ", "Lead ", "Associate ", "Distinguished ", "Chief ", "Assistant "
};
private static readonly string[] areas = new string[] {
"", "Software ", "Security ", "Systems ", "Data ", "Compliance ", "Business ", "Database ", "Reliability "
};
private static readonly string[] titles = new string[] {
"Engineer", "Developer", "Administrator", "Architect", "Tester", "Programmer", "Analyst", "Manager", "Consultant", "Scientist"
};
private static string GetRandomString(string[] source)
{
return source[rand(source.Length)];
}
static void Main(string[] args)
{
for (var i=0;i<100; i++)
{
Console.WriteLine(MakeJobTitle() + " at " + MakeCompanyName(rand(2) == 0));
}
}
}
}
Assistant Business Manager at Data Technologies Co.
Chief Security Engineer at Synchronized Development Applications GmbH
Junior Database Engineer at Synchronized Finance Services AB
Distinguished Compliance Architect at StefglifGri
Chief Compliance Architect at Oonvyrpum
Associate Database Tester at United Enterprise Technologies Co.
Lead Systems Consultant at Advanced Development Consultancy GmbH
Junior Systems Developer at Quejo
Lead Business Programmer at Shockminhot
Assistant Systems Consultant at Tin
Distinguished Data Tester at Synchronized Development Services GmbH
Associate Reliability Consultant at GlopNutjaf
Architect at Vu
Distinguished Security Developer at Hym
Assistant Consultant at Eenguck
Chief Tester at Twygaick
Assistant Security Engineer at Tatha
Senior Consultant at Gru
Distinguished Systems Administrator at Transatlantic Big Data Technologies, Inc.
Senior Business Analyst at Synchronized Research Technologies
Senior Systems Programmer at Modern Finance Technologies GmbH
Database Programmer at Oonyckun
Consultant at Pathouyr
Distinguished Reliability Programmer at Plumeg
Assistant Security Tester at Global Information Consultancy Co.
Lead Systems Developer at Advanced Data Services Co.
Assistant Reliability Developer at OomVeestouck
Distinguished Compliance Administrator at National Enterprise Applications Co.
Lead Software Architect at Advanced Data Consultancy, Inc.
Lead Systems Scientist at United Mobile Industries Ltd.
Database Developer at Yntaig
Distinguished Compliance Analyst at Ug
Chief Business Analyst at European Information Industries GmbH
Junior Reliability Programmer at European Mobile Services
Assistant Compliance Engineer at Wepir
Senior Security Consultant at Advanced Network Industries AB
Systems Programmer at Thag
Lead Security Developer at Advanced Information Applications
Senior Data Engineer at Specialized Enterprise Solutions AB
Chief Security Engineer at Synchronized Development Innovations AB
Lead Compliance Manager at Specialized Development Applications Co.
Associate Software Consultant at Stou
Junior Systems Developer at National Research Solutions Co.
Senior Reliability Architect at European Finance Industries AB
Data Manager at Ufgroo
Chief Compliance Programmer at In
Database Manager at European Development Consultancy GmbH
Database Developer at At
Chief Reliability Developer at Ur
Lead Business Consultant at Ainggroungmeck
Associate Business Scientist at International Mobile Industries Co.
Database Scientist at Plo
Distinguished Business Engineer at European Data Services
Lead Reliability Consultant at Twaiquun
Assistant Engineer at Global Mobile Innovations
Assistant Reliability Tester at Ymoop
Lead Database Developer at Transatlantic Information Industries Co.
Systems Consultant at Twoot
Chief Compliance Administrator at Synchronized Development Solutions Ltd.
Associate Software Administrator at Development Technologies Ltd.
Lead Software Consultant at Advanced Enterprise Industries Ltd.
Chief Data Programmer at Flanstoor
Lead Data Engineer at Glool
Chief Reliability Tester at Epshoutho
Scientist at Ungthap
Assistant Systems Analyst at Grou
Junior Data Architect at Transatlantic Enterprise Exchange AB
Associate Developer at Ool
Security Analyst at Specialized Finance Industries, Inc.
Junior Data Scientist at National Data Innovations
Assistant Compliance Analyst at ThimgloTwout
Senior Security Tester at International Network Consultancy Co.
Assistant Engineer at Tum
Junior Compliance Architect at Advanced Information Applications, Inc.
Lead Reliability Analyst at United Information Innovations Ltd.
Junior Business Tester at Advanced Enterprise Industries, Inc.
Distinguished Security Manager at Synchronized Enterprise Solutions, Inc.
Senior Manager at EepmickPee
Lead Compliance Scientist at Jangzo
Assistant Data Architect at International Finance Exchange Ltd.
Chief Programmer at National Mobile Applications, Inc.
Senior Data Manager at Enterprise Services, Inc.
Lead Reliability Administrator at European Development Consultancy, Inc.
Associate Security Architect at Zy
Distinguished Business Consultant at Upsteweg
Senior Reliability Developer at Tag
Junior Software Consultant at International Enterprise Services Ltd.
Lead Business Programmer at Modern Finance Technologies Ltd.
Lead Scientist at Jeearplou
Junior Programmer at Mum
Junior Database Analyst at Opstozee
Lead Database Developer at OpThozal
Tester at Thee
Associate Consultant at Too
Associate Security Analyst at QuemGlai
Assistant Business Scientist at International Finance Technologies AB
Chief Database Analyst at Advanced Mobile Exchange Co.
Database Developer at Haiwoup
Chief Compliance Manager at United Network Consultancy GmbH
Senior Data Consultant at European Information Industries GmbH
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment