Kral Ferch

Kral Ferch Email and Phone Number

Principal Software Engineer, Notemeal @ Teamworks @ Teamworks
Aurora, CO, US
Kral Ferch's Location
Aurora, Colorado, United States, United States
Kral Ferch's Contact Details

Kral Ferch work email

Kral Ferch personal email

About Kral Ferch

I am passionate, committed to code quality and maintainability, have an incredible work ethic, and an entrepreneurial spirit. I have great empathy for the end user and work hard to ensure the usability of every feature. I strive to learn new things and become better at my craft. I have 36 years of experience writing software.

Kral Ferch's Current Company Details
Teamworks

Teamworks

View
Principal Software Engineer, Notemeal @ Teamworks
Aurora, CO, US
Website:
teamworks.com
Employees:
618
Kral Ferch Work Experience Details
  • Teamworks
    Teamworks
    Aurora, Co, Us
  • Teamworks
    Principal Software Engineer
    Teamworks Jul 2022 - Present
    Durham, Nc, Us
  • Coupang
    Senior Software Engineer
    Coupang Apr 2020 - Jul 2022
    Seoul, Seoul, Kr
    As an engineer within the Coupang Media Group, I was part of standing up the company's first Ad Engine. It was very exciting going from generating no dollars for our company to generating millions of dollars a day. The lessons that I learned about big data and all the processing involved were invaluable and broadened my horizons greatly from my predominantly front-end software career. I went to Coupang to be a JavaScript/Node full-stack engineer because I love the JavaScript language and style of coding so much. My team, unfortunately, was a tiny minority as the rest of the company used Java and my team was disbanded and absorbed into other Java teams at the end of 2019.My most recent 3 years were spent as a Java backend engineer. I worked on the auction engine, budget, and promotion services. Some highlights were:* Auction engine that ranks and filters candidate ads deciding the winner.* Data streamer processing beacon urls for tallying user clicks and views of ads.* Airflow dags to process large amounts of AWS S3 data, updating hive partitions and providing daily distilled lookup of information.
  • Coupang
    Senior Software Engineer
    Coupang Nov 2018 - Mar 2020
    Seoul, Seoul, Kr
    Settlements ServiceTech: JavaScript/TypeScript, AWS Lambda, React, Postgres, bash scripting, jq, TerraformI initially started as one of two developers creating the Settlement Service. The job of Settlements was to add up the monthly cost for each vendor of all the ads that were served on their behalf in order to bill them. • Our first version was a local JavaScript app that would sum the large amounts of data in Redshift and populate tables in a local docker instance of Postgres and then use the data from Postgres to create a monthly spreadsheet with all of the rolled up data in support of the billing amount.• An improved next version was written entirely by myself using AWS Lambda functions written in JavaScript that would nightly aggregate data from the previous day and refresh materialized views in an AWS Postgres instance. At the end of the month, bash scripts that I created were used to run the monthly settlement, pulling data from Postgres and writing the monthly Excel spreadsheet.• When our JavaScript/Node team was disbanded and absorbed into other Java teams I wrote the UI for the Java version of Settlements using React. The app had navigation by month, edit-in-place fields, and drag-and-drop of excel spreadsheets providing uploading of data exceptions to the standard settlement run.
  • Microsoft
    Senior Software Engineer
    Microsoft Dec 2016 - Oct 2018
    Redmond, Washington, Us
    Mixer mobile appTech: React Native, TypeScript, RxJS, and Redux, targeting both iOS and Android.Heroes: Dan Abramov, Jay Phelps• 6-months from start to launch. Wrote the Chat feature, a key component of the app.• Wrote the socket handling and the protocol for the message traffic.• Processed and displayed chat messages composed of text, links, direct mentions, and emoticons. In React Native this is achieved using nested Text elements in TypeScript which get translated to the native rich text control on each OS. The hardest challenge was overcoming a couple of hurdles with embedding our custom sprite sheet emoticons in chat messages. For iOS, the size of the sprite sheet had to be determined and fed back in.. For Android, image cropping and storage had to be used to get individual images.• Implemented auto suggestions for emoticons, users, and commands. This feature uses regex matching to know when to show a popup list above the input element. ':', '@', and '/' followed by text results in searches of the emoticons, users, and commands lists to show matches. • Complex UI to bring up the OS keyboard for normal text and emojis but toggled the same area for a custom emoticon picker.• Implemented management pages for users and messages allowing the various roles to delete messages, promote, demote, and ban users.• Implemented a viewer list to be able to look up users in the chat sorted by role.• Improved the throughput of chat by an order of magnitude, from being able to handle 50 messages per second to a range of 500 to 2000 messages per second. Native profiling was broken but, via call stack timings from the Chrome debugger, several spots taking significant chunks of time were found and optimized.• Established best practices for our Redux code making use of composition and selectors.
  • Microsoft
    Senior Software Engineer
    Microsoft Feb 2016 - Nov 2016
    Redmond, Washington, Us
    Xbox Clubs, LFG, and Tournaments initiativeTech: C# and XAML on Windows 10Lead developer on the Clubs area.Read and understood the Unicode Emoji spec and wrote code to parse the various emoji characters data files and combine that data with localization files output a single JSON document with every emoji character in it. This data file was then used for many of the chat features: • Detect emojis in a message to increase their font size, • Auto-suggestion for emojis to allow keyboard users to use colon ':' syntax in the chat message and tab/arrow complete the emoji they are looking for without needing the mouse. • A visual emoji picker with tabs grouped by category for use with mouse and keyboard. • For accessibility, the name of the emoji can be spoken on focus change. • A family composer that allowed for customizing the user's notion of their family by choosing the number of family members, the combinations of man/woman/boy/girl, and altering the skin tone of each family member.Implemented Giphy APIs to choose animated gifs and embed them in messages using XAML and the rich text control.Implemented the ability for the user to upload an image. Unlike consuming a Giphy internet URL, this was much harder to achieve because the backend required a token for downloading, so the raw bytes had to be downloaded and then the image constructed and displayed.Real-time typing indicator with names of multiple users currently typing in chat.Built the real-time activity stack for Clubs making it easy for the various pages in the app to be responsive to changes in the club. 20 different changes can occur that are dynamically updated in the UI.
  • Microsoft
    Senior Software Engineer
    Microsoft Jun 2014 - Feb 2016
    Redmond, Washington, Us
    Xbox app on Windows 10, Initial launchTech: C# and XAML on Windows 10Wrote many large pieces of the app. Notable contributions include:• Implemented a heterogeneous list solution for our app. Many of our entities had the same visual presentation, like an image on the left with 3 lines of text on the right. Wrote XboxListItem and XboxGridItem custom controls in XAML and used container recycling via a behavior that implemented ChoosingItemContainer to allow the binding to come from different fields for the different entities and to choose the correct presenter reducing a ton of duplicate code in our app.• Implemented the real-time activity (RTA) feature in our app. Used a long-running thread for sending and receiving updates. All the People lists receive updates through pub/sub about rich presence changes such as online or offline, or what game or app the user is using. XAML ObservableCollections were used to do in place updating resulting in a smoother user experience.• Took on the Party Chat feature when a team member suddenly left. Led the v-team, mentoring 2 developers and holding the quality high while establishing strong cross-team collaboration with the platform team. A favorite customer delighter on this feature was that we receive events from the platform as frequently as every 100ms and through the magic of XAML binding which only updates when needed, I put “squawker rings” around the party member gamer pics in their primary color, to make it really stand out when people are talking into their headsets.• Implemented a trie search to speed up the user's experience when searching through large friend graphs.• Wrote AttachedProperty implementations to provide a better architecture for MVVM patterns for ListView, ItemClick, and RightTapped.• Wrote data layer and model layer components for many of our services to get the data to the UI.
  • Microsoft
    Senior Software Engineer
    Microsoft Nov 2012 - Jun 2014
    Redmond, Washington, Us
    Xbox One Console launchTech: JavaScript, HTML5, and CSS (WinJS) for Xbox OneHeroes: Doug Crockford• Worked on many parts of the People app. Implemented innovative activity feed that would animate new information into the feed in real-time. Wrote the ‘block user’ feature allowing a user to block, unblock and show the list of blocked users. Wrote code that did the complex aggregation of data from multiple services for retrieving lists of people, removing a lot of duplicate code from several pages in the app, Implemented the Party Browse and Party Details scenarios and pages.• Created the common code area for our social apps and implemented wrappers for many of the services. Created a shared logger used by all of the social apps. It had a simple powerful API that could log to the debugger, an in-app console overlay, the Windows event viewer, and to the cloud.• Extended our build system to automatically detect the presence of an event tracing manifest in any of our social apps in order to generate the source code necessary to send those events to the cloud. The design allowed for having multiple manifest files. This was a requirement for all of our social apps because we had logging in shared code as well as the app. Created a capture tool that would capture logging traces from users and then hydrate them for the dev for easy viewing.
  • Microsoft
    Software Development Engineer 2
    Microsoft Jul 2008 - Nov 2012
    Redmond, Washington, Us
    Zune Video and Music Marketplace on Xbox 360Tech: C++ and XUI for Xbox 360Patent US8819043: "Combining song and music video playback using playlists"• Developed the NowPlaying and SmartVJ features for the 2012 Zune Pass release.• Primary developer for the Music Marketplace app on Xbox in 2010. Came up with an idea for having music videos mixed in with audio tracks in a now-playing experience that was initially rejected because it was thought to be too hard. Created a quick prototype of the idea on personal time and the feature ended up getting accepted, shown on stage in a live demo at E3, and a patent was filed and granted for it. Other highlights included creating an album wall background showing album art from all the tracks in the NowPlaying playlist, and providing selectable links in artist biographies and album reviews.• Responsible for the Library feature for the Video Marketplace app on Xbox in 2009, which presented the user with video content based on integrating purchase history information with metadata from downloaded content.• Took ownership of the crucial purchase flow and details page feature when it had slipped near code complete. Wrote 180 unit tests for the feature using Test Driven Development. Put in 143 hours in a two week period on the feature at a critical time for the project.• Through involvement in the Unit Test distribution list at Microsoft, identified a xUnit framework (CppUnit) created by the Forza team several years ago. Re-engineered it to work with VS2008 and published it on CodeBox. It was adopted as the unit test framework for developers on my team.• Created and maintained a working Visual Studio build of our code that matches the command line build environment. Several people find it very useful and rely on it to be more productive in their jobs. The build also includes single click (F5) build, deployment, and debugging.• Winner of the team bug fixing contest in 2010 and runner-up in the 2009 contest.
  • Microsoft
    Software Development Engineer 2
    Microsoft Feb 2012 - Aug 2012
    Redmond, Washington, Us
    Xbox 360 DLNA player (PlayTo)Tech: C++ and XML for Xbox 360• Technical lead on the project. Designed the initial architecture and stood up a working implementation of the Zune layers with keyboard input that fully simulated the API of the XAM code that hadn’t been written yet. This allowed my team to be unblocked to test their features during development. Due to how hard it was to set up a real environment, my team was still using my simulated XAM code a couple of months after the real XAM code was available.• Designed and implemented a PlayToManager singleton to manage the state of our Xbox Digital Media Renderer (DMR). PlayToManager provided the XAM with details about the exact state we are in from a DLNA perspective as well as communicating content and playback state to the UI. The content was given to us from a Digital Media Controller (DMC) and resulted in PlayToManager constructing and managing a XAVPlayer to decode and render the content.• The DMC for our golden path scenario was the Windows 8 OS which provides an API for app developers to stream content from Win8 to our Xbox DMR. The Windows 8 DMC provided several resources to choose from for streaming audio, video, and image content. Our PlayTo app on the Xbox chooses the best resource from among those being offered. In order to do this, Used TDD to write a SAX parser to take the content XML given to us from the DMC and convert it into C++ classes representing the entities in the XML. The XML fragment given to us conforms to a DIDL-Lite schema defined and described in various DLNA and UPnP specifications. Added logic to select the best choice from a collection of resources. These DIDL-Lite classes, supported by 79 unit tests, kept the logic in one place about resource selection and interrogation of the content metadata, freeing up the PlayToManager to focus on state management of our DMR.• Strong cross-team collaboration with Xbox 360 platform team and the Windows Media team.
  • Microsoft
    Software Development Engineer
    Microsoft Oct 2005 - Jun 2008
    Redmond, Washington, Us
    Microsoft AutomotiveTech: C++ for Windows Embedded CE• Solely responsible for the design and development of the Media Player application for the Ford SYNC project.• The Media Player application provided a consistent look and feel for 7 different car head units including 4 different textual displays and 3 different form based displays.• The Media Player application provided rich speech functionality using SAPI 5.1. Dynamic grammar rules were constructed to allow the user to ask for their music by the metadata fields associated with the music in their collection. • Test Driven Development was used where possible. The Tux test harness provided by Platform Builder was used to house the tests and custom mock objects were created to represent entities external to the Media Player application.
  • Cardinal Health
    Principal Software Engineer
    Cardinal Health Oct 2002 - Sep 2005
    Dublin, Oh, Us
    Tech: C# and FitNesseHeroes: Kent Beck, Ward Cunningham, Uncle Bob Martin, Gang of Four, Eric Evans• Architect and primary developer on the Guardrails Editor (GRE), a single-user desktop application with a rich object API and a file format relying on .NET serialization. Validation and UI objects work in concert with business objects to enable a hospital to define safe limits around the administration of infusion drugs. eXtreme Programming methodologies and Test Driven Development were practiced to the extent possible. NUnit used for unit testing; FitNesse for Acceptance testing.• Architect and primary developer on the System Management Server application, a multi-threaded Windows Service designed to initiate and throttle the upload of a GRE file to a network of wireless-enabled infusion devices in a hospital.• Designer and developer of portions of the Communications Kernel application, a Web Service that uses .NET Remoting to communicate with a Windows Service which in turn talks with embedded devices via wireless 802.11b. Wrote a custom acceptance test application to allow the business owner to prove the functionality of the system as a whole.
  • Edmin.Com
    Chief .Net Architect
    Edmin.Com Jul 2001 - Sep 2002
    Us
    Tech: C#, C++, COM, ASP.NET, ADO.NET, SQLDesigned and developed the integration of a proprietary application and Microsoft’s Encarta Class Server application. The project was a multi-tiered .NET application making use of ASP.NET for the presentation layer, C# assemblies containing the business logic, and ADO.NET to access Microsoft SQL Server 2000. Also created a Web Service to support retrieval of registry information from remote machines and a C++ 7.0 attribute-based COM object to marshal data between .NET and Encarta Class Server’s C++ COM API.
  • Tyco
    Software Development Consultant
    Tyco Aug 2000 - Jul 2001
    Cork, Ie
    Tech: C++, ATL, COM, XMLHttpRequestDesigned and implemented the communication modules for a healthcare application which allowed nurses to chart patients with a portable handheld device. The data was sent and received using XML over HTTP.
  • Gateway
    Software Developer Iv
    Gateway Mar 1999 - Aug 2000
    Irvine, Ca, Us
    Tech: C++, XML, COM, ATL• First Software Developer IV hired when corporate headquarters moved to La Jolla, CA.• Team lead on a prototype scalable web application to be used by new web projects at Gateway. Created a framework that was reviewed by Microsoft Consulting Services and deemed creative and innovative. The framework used several key Microsoft technologies including XML, hierarchical IDL structures, Microsoft ATL consumer templates for OLEDB, and comprehensive error handling using standard COM error facilities and the Microsoft Message Compiler.• Designed and implemented business layer Microsoft Transaction Server (MTS) objects for Gateway’s largest eCommerce project.
  • Stac Electronics
    Senior Programmer
    Stac Electronics Sep 1998 - Mar 1999
    Tech: C++, COM, DCOMAnalyzed memory leaks, maintained existing DCOM code base, and designed and implemented a RAS connectivity solution for a DCOM product.
  • Saic
    Senior Programmer
    Saic Dec 1990 - Sep 1998
    Reston, Va, Us
    Tech: C++, COM, DCOM, ATL, MFCHeroes: Martin Fowler, Don Box, Charlie Kindel, Bjarne Stroustrup• Designed and developed several key applications of the PacMedNet (PMN) 3.0 project including the Master Subject Index using MTS and MSMQ which was implemented as several DCOM, NT Service, and DLL components created using ATL. Designed and implemented a complex application using DCOM to communicate with other PMN modules, ODBC to retrieve patient data from an Oracle database, and an MFC Document/View architecture to present the data to the user in a flexible way. Designed and developed three Windows CE applications extending PMN 3.0 functionality to portable handheld devices.• Designed and developed an HL7 Interface Engine using Visual C++, asynchronous socket communication, multithreading, ODBC to an Oracle database, and DCOM.• Designed and implemented an expert system for the Office of the Secretary of Defense, written in Visual C++, MFC, and Win32 and cross-compiled to the Macintosh.• Designed and developed several other projects written in C and Motif/X11R4 for the UNIX platform.
  • General Dynamics
    Computer Systems Engineer
    General Dynamics Aug 1989 - Nov 1990
    Reston, Virginia, Us
    Tech: C, Sun ViewWorked on Top Secret project which included designing and modifying new sections of an application component to allow users to manipulate resources on remote machines. Created and edited Sun View frames and subwindows and their associations with the Sun View Notifier using the C programming language.
  • Texas Instruments
    Software Design Engineer
    Texas Instruments Jan 1988 - Jul 1989
    Dallas, Tx, Us
    Tech: C, XwindowsHeroes: Kernighan, RitchieWorked on a Top Secret project which included designing and implementing a complex graphical editor suing XI IR3, the Athena widget set, and Xlib calls. Completed and upgrade for a PC-based application producing a 10-fold speed increase over the original application. Both programs were written in C. A second Top Secret project involved system integration and testing of a real-time microprocessing system using distributed computing.

Kral Ferch Skills

Agile Methodologies C# .net Software Development Software Engineering Xml Visual Studio Object Oriented Design Silverlight

Kral Ferch Education Details

  • Montana State University-Bozeman
    Montana State University-Bozeman
    Computer Science

Frequently Asked Questions about Kral Ferch

What company does Kral Ferch work for?

Kral Ferch works for Teamworks

What is Kral Ferch's role at the current company?

Kral Ferch's current role is Principal Software Engineer, Notemeal @ Teamworks.

What is Kral Ferch's email address?

Kral Ferch's email address is kr****@****ang.com

What is Kral Ferch's direct phone number?

Kral Ferch's direct phone number is +120691*****

What schools did Kral Ferch attend?

Kral Ferch attended Montana State University-Bozeman.

What skills is Kral Ferch known for?

Kral Ferch has skills like Agile Methodologies, C#, .net, Software Development, Software Engineering, Xml, Visual Studio, Object Oriented Design, Silverlight.

Who are Kral Ferch's colleagues?

Kral Ferch's colleagues are Margaret Ingels Ms, Atc, Marcus Colby, Ashley Renteria, Sydney Tong, Zachary Romash, Ph.d., Ali Fahey, Haley Duffield (Muller).

Free Chrome Extension

Find emails, phones & company data instantly

Find verified emails from LinkedIn profiles
Get direct phone numbers & mobile contacts
Access company data & employee information
Works directly on LinkedIn - no copy/paste needed
Get Chrome Extension - Free

Aero Online

Your AI prospecting assistant

Download 750 million emails and 100 million phone numbers

Access emails and phone numbers of over 750 million business users. Instantly download verified profiles using 20+ filters, including location, job title, company, function, and industry.