To create an improved version of https://www.ski-jobs.co.uk/, which we started before (the ‘recruitment’ site).
We can restart looking at that in parallel to #1 and #2 as I think once this is working I can do a lot of the development work myself. I want to first make the workflow superior to this site and then I want to scrape all the jobs from this site and a few others.
It will become evident as we build this , but first priority is to get it working with fresh (manually entered) data.
Competitor sites
Aman: Please work out how to scrape all the jobs from the following sites:
Salary: Competitive/ 1,700 Euro net per month (French contract; food and ski hire included) – Chalet Hosts? Driver & hospitality assistant @ Meriski/ 2,100 Euro net per month for Chalet Chefs (working 5 days a week)
Nationality: EU passport or Carte de sejour/ New Zealand, Australian, Canadian, or South African passport holders who have obtained a working holiday visa for France
For candidates
Candidate CV review
Referal fees
For employers:
Ask clients what they want
Success based (no hires, no fees)
Target audience may be France
Transport from UK to France/Austrai( check fllght costs with lots of luggage in early dec)
Response from Website Inquiry Contact Form process (in Payroll Project)
As in ATS, the process of submitting an inquiring will create a new User. Ensure that the role of that new user include ROLE_EMPLOYER
New Employers can choose the services they want to avail themselves of
Monthly payroll
Employment contract negotiations
Health insurance set-up
Employee permits (including managing capturing and checking the data from the employees)
Employee admin (housing, transport, training)
Ski hire for the season
Use the Product entity to control the text for each service (including pricing)
Check box for each Product that each Employer wants to take up
When a User logs in, if they are ROLE_EMPLOYER but do not have an associated Employer details set up, it will show a page designed to walk them through setting up an Employer.
Employer page should include a question as to what services they would like to use. (See above)
If an Employer has been set up, it will direct them to their own dashboard page with their Employer(s) (likely 1 but can cater for others) with the links to their various pages with some sort of summary info.
If a a ROLE_EMPLOYEE or ROLE_USER, then design a dashboard page for an Employee
Access to their personal details
Store of permits
Payslips
General information and help
When uploading an Employee, be sure to track Default Language
Payroll – Other tasks
Create a Pricing entity
Product (relational field)
# Employee and price (thoughts – single entry of multiple entries per product)?
Create a Communications Template entity
Name
Text in EN, FR, DE etc
When uploading a new Employee be sure to include their country so the User Default language can be set.
Edit the Employee upload function (New or Edit or Import) to check the employee language setting
Pending
1.03
Injection of Fields from a Record into PDF forms
The objective of the website is to automate the production of and the collection of data for various PDF forms.
Your role is to understand the tech required to take an entry (the name of the employee) and “inject” it into a form.
Create a new website that is largely a billboard site. Call it “XVA Consulting”
Create a live website and SSL
Complete
5.01
Introduction
With a career spanning several prestigious institutions, I have accumulated a wealth of experience and expertise that can be of significant value to your organization. I invite you to explore my journey and accomplishments in various roles across the financial industry.
During my tenure at JPMorgan, I led a transformative initiative within the Clearing and F&O business. By introducing front-office risk-management and pricing discipline to this previously considered "agency" business, I successfully revamped the risk and capital infrastructure. This endeavor resulted in doubling the revenue of the Clearing business while reducing the capital, GSIB, and residual interest footprint. Notably, my team's contributions led JPMorgan to win the Risk award for best OTC Client Clearer in 2019 and 2021.
Prior to that, I played a pivotal role in implementing funding adjustments (FVA) and lifetime cost of capital (KVA) for the derivative franchise globally, which had a substantial impact on the firm's performance. Furthermore, I spearheaded the introduction of single and multi-currency OIS discounting for collateralized derivatives, establishing a centralized firm-wide utility for managing funding risks across all lines of business and regions.
The idea of capturing value in trades through recognition of different eligible assets (i.e. initially the issue of moving from Libor to OIS discounting, but also extending to other assets in the CSA) has been well known since around 2009-10 (when GS reputedly made the majority of their FICC revenue optimising for this). Most dealers have updated their systems to avoid this arbitrage in their bilateral business (crystallizing considerable costs for the late movers).
However, this concept is not completely efficiently captured in every aspect of the market, for example where the trades are “given-in” under a Clearing Agreement. That market is a post trade approval market and essentially DD-agnostic and hence it is still open to arbitrage. Specifically, when a client goes to market, the Executing Broker (EB) prices the trade according to their DD curve facing the Clearing Agent. These can be different from different EBs, and is not the same curve as the DD curve the Clearing Agent has with the client. So, in effect, the trade is priced on the “wrong” discount (DD) curve and a client could potentially identify backwardation opportunities particularly for trades with large funding deltas.
2. CVA mining and IM optimisation – XVA Hub
Should a corporate or hedge fund have any uncollateralised risk, a Central Hub function could help mine bank’s CVA reserves where there are offsetting risk and or credit deltas across counterparties.
Similar to CVA mining, moving trades between counterparties can optimise the availability of the $50m threshold under the Non-Cleared Margin Rules (NCMR), reducing total IM funding needs. For example, if their cost of debt is 5%, adding 5 dealers and optimising for threshold could save 5*$50m*5% = 12.5m per annum
Another specific variant of the IM optimisation idea is to convert Cleared IR delta into uncleared put and call swaptions, where the IM can be bilaterally negotiated and offset bilateral risk. In essence, it can result in free funding.
A large hedge fund, recently set up a Central Hub to manage the relationships and XVAs with all their dealers, to prevent unnecessary credit costs/exposures and to minimise margin funding costs.
Complete
5.02
Consulting Services in CVA and XVA: Issues and Offerings
As a highly accomplished derivatives risk manager with extensive experience spanning trading, marketing, and risk management at JPMorgan, your expertise uniquely positions your consulting firm to offer comprehensive services in the field of Counterparty Value Adjustment (CVA) and XVA (X-Value Adjustments). Drawing from your vast experience, your consulting firm can address a multitude of critical issues and provide valuable insights to clients in the financial industry. Here's a detailed exploration of the issues and offerings your consulting service may provide:
CVA and XVA Methodologies and Implementations:
Offer guidance on implementing and enhancing CVA and XVA methodologies, leveraging your experience in pioneering CVA trading and defining philosophies for derivative counterparty risk management.
Provide expertise in designing and implementing systems for comprehensive XVA calculations, including CVA, DVA (Debit Value Adjustment), FVA (Funding Value Adjustment), and others.
Market and Regulatory Developments:
Stay abreast of evolving regulatory frameworks related to counterparty risk, including Basel III and IV, ISDA SIMM (Standard Initial Margin Model), and other regulatory changes impacting derivatives trading and risk management.
Offer insights into regulatory changes affecting non-cleared margin requirements, capital metrics (e.g., SLR, LCR, NSFR), and their implications on derivatives pricing and risk management.
Risk Management and Optimization:
Provide guidance on optimizing counterparty risk management strategies, incorporating differential discounting and collateral funding optimization techniques pioneered during your tenure.
Assist clients in developing comprehensive risk management frameworks to mitigate credit, funding, and capital risks across the entire derivatives portfolio.
Product Structuring and Pricing:
Offer expertise in structuring complex derivative products tailored to clients' specific risk profiles and investment objectives.
Provide pricing analytics and model validation services for structured products, drawing from your experience in executing derivative transactions for structured finance businesses.
Client Clearing and Margin Optimization:
Assist clients in optimizing client clearing operations and margin requirements to enhance profitability while maintaining risk discipline.
Provide guidance on establishing market risk-aware pricing frameworks for client clearing services, based on your experience leading the implementation of FVA (Funding Valuation Adjustment) and KVA (Capital Valuation Adjustment).
Technology and Infrastructure Enhancement:
Offer guidance on technology and infrastructure enhancements necessary to support advanced risk management and pricing analytics, leveraging your experience in technology and infrastructure change management.
Assist clients in implementing cutting-edge risk management systems and tools to streamline operations and enhance decision-making processes.
Industry Engagement and Thought Leadership:
Provide thought leadership and industry insights through participation in industry forums, conferences, and regulatory initiatives.
Offer bespoke training and educational programs to disseminate best practices in CVA and XVA methodologies and risk management techniques.
Client-specific Solutions and Advisory:
Tailor consulting services to meet the unique needs and challenges of individual clients, spanning investment banks, asset managers, hedge funds, and other financial institutions.
Offer bespoke advisory services to address specific client concerns, such as optimizing derivative trading strategies, managing counterparty exposures, and enhancing regulatory compliance.
In summary, your consulting firm's offerings would encompass a broad spectrum of services, ranging from methodological expertise in CVA and XVA calculations to strategic advisory on risk management, regulatory compliance, and technology enhancements. Leveraging your extensive experience and thought leadership in derivatives risk management, your firm is well-positioned to provide invaluable guidance and solutions to clients navigating the complexities of counterparty risk in derivatives trading.
Build a ‘chron' that restarts the scrape for a users contacts every few hours, after each batch is complete….
So let's say we think that LinkedIn won't stop us if we do batches of 30 connections…. So once that the first 30 are scraped, and it has waited [2] hours, do the next 30 connections…. until complete
All – shouldn’t include the Employees (export already there)
Pending
8.11
Flight data
In absence of the list of flights, can we scrape kayak for all the destinations served by the airport to build a list of flights?
Pending
8.01
Clients
Can't make entity
Add new fields:
Total PV
Summary data
Add link to their trips
12month PV
List of bookings, with first date and PV
Complete
8.10
SBB
Fix SBB scrape (SBB changed the design of their page)
Pending
8.09
Car maintenance: Car and miles
Date
kms
New tyres
Notes
Then compute a view showing expected mileage and hours driven by date for all cars. Colour dates that are estimates and real, Reset the counter when the a real setting is made and compute the differnence (absolute and relative percentage )
The objective is to build up a database of all future airline/flight numbers/departure/arrival times for a given airport (eg PFO).
The objective is to get data about every flight scheduled in to/out of Pathos airport (or Geneva airport). So each day going forward, i want to see the flight number, airline, destination/departure airports, schedule time and actual departure/arrival times.
The flight database is designed to provide data to the AXtools and the ParkNRide projects.
To do this I want to list all the destinations served by an airport (eg for PFO it is LGW, FRA, LHR, LSN, etc)
For each date and route (eg LGW-PFO), return the flight details.
Look for direct (non-stop) flights only
Return the list of flights (date, airline, take-off and landing time, price)
We will match that to a database of flights (airline, route, time) to get a flight number. If a new flight, add a new record to look up the flight number.
Include useful market information page with podcasts from our top providers – e.g. Merryn@FT; Prof G. Include date and link, and summary of the content and my commentary. Important for social media engagement
Link to news scrapper
Complete
10.02
Updating contributor site
Scrape either the YouTube contributor site, or apple.com to show all new shows
Only issue remaining is that they are not sorted by date pre expansion…. And a lot of YouTube dates at 12-Aug??
Handling of visitors - visitor fee applied to members Tournie and leagues Platinum vs good memberships
Pending
11.08
User
When you register for the club as if permanent or temporary login.
Have feature that emails logged members with expired memberships to remove them from the main list.
Field. Temp membership - date. And remove those from the drop-down menus etc.
Prepare a confirmation email to be sent to all bookings (each night and upon making the booking). In terms of the reference I don’t think we can use the court availability I’d as that changes if they change court. For the coaching booking that can work though?
When a new user logs in, have a field that asks if they are a temporary visitor or a long-term member
Approach public schools to ‘rent’ their tennis courts over the summer
Simultaneously book a Court(s) for Coaches and for Group Sessions.
What happens if the court is not free?
For a coaching session book a clay and a hard court and release one when booked. And release the backup 24 hours before the lesson
When adding a tennis Group Session that is chaperoned by a coach, add that to the coaches calendar too.
Cancellations of a coaching booking would free up the coach/court (or back to the ‘bagsy’)
Q: When should the system release a court if the coach is not booked and there is demand for the court (ie when does the bagsy run out)?
Q: Should the coach reserve a hard or clay court. How should you handle a client who wants to choose (suggestion - the coach bagsies a hard court and if available at the time of booking then it can move to a clay). Do you want to differentiate between courts (eg 8v 9 etc)?
Add calendar invite when someone makes a coach or session of court booking
Have a tennis coaches view that shows today and tomorrow, that is not password protected (but hidden link) allowing the coaches to see their calendar with 1 click. Make it work on phones
Q: What phone do Wyn, Steve, Elena have?
Decide order of priority for court usage
Show account balance/kitty in Header
Improve ergonomics of the the coach bio page.
Ask Wyn for a bio, 2-3 photos and a video for him Steve and Elena
Track no-shows
Q: Should a “no-show” prevents new bookings for [x] weeks. On the first/second/third strike?
Track canclled bookings?
Cancel bookings should be saved in a new entity and perhaps tracked. What limit to put on that?
Flexi memberships: Track number of flexi court vouchers remaining
Compute/summarise:
Court stats by month (# $$$)….. Hard, clay by hour - broken down by the DoW and hour. ie should you change prices at different times of the day to balance the loads better
Coach stats by month (# $$$)
Member stats by month
Number of court booiings, number of coaching and group sessions.
Which members break-even vs their membership cost etc? Should you increase/decrease the annual subscription?
Membership reminders
Excel import/export of all users to upload members for the admin - test
Ability to process emails into a booking easily.
Pending
11.14
Bugs to fix
Group Session Index - how do I sort them differently if logged in or not (different column count)
My availability grid and the “I am away button” (line 110 in Index). Seem to have lost the functionality on these buttons altogetherPayroll
Change CompanyName etc to ClubName etc in all forms etc
Work on the Index page, and maybe use a table
Rename Twitter to X. Update icon
Pending
11.09
Env
Dynamic email login and password
Pending
11.05
Formatting
Photo handling on the Interests page
Background colour on footer and header
Height of the header, overshadowing the content
Pending
11.05
Premiership table view of players
Show last 5 wins/losses
Button for Single or Doubles
However over for date, player, score
Scrape ITF player rankings weekly
Pending
11.05
Premiership view of players
Scrape ITF rank weekly
Language settings (in ATS template)
Algo for scores.
Pending
11.03
There is no extension able to load the configuration for "when@test" (in "C:\dev\tennisclub\config/packages/twig.yaml"). Looked for namespace "when@test", found ""framework", "doctrine", "doctrine_migrations", "maker", "security", "twig", "web_profiler", "symfonycasts_reset_password", "sensio_framework_extra", "jsvrcek_ics"" in C:\dev\tennisclub\config/packages/twig.yaml (which is being imported from "C:\dev\tennisclub\src\Kernel.php").
Techarete Systems Ltd (‘Company’) is a pioneering technology company headquartered in Cyprus. The Company specialises in the development of cutting-edge software solutions designed to transform client booking and CRM systems used in various industries. Our commitment to innovation, efficiency, and customer-centricity drives the creation of software that optimizes resources, enhances marketing potential, and revolutionizes how businesses manage their booking processes.
Vision and Mission: At TECHARETE SYSTEMS, our vision is to empower businesses with innovative software solutions that not only streamline their booking processes but also amplify their marketing potential. Our mission is to be a driving force behind positive change, leveraging technology to optimize resource allocation and deliver unparalleled user experiences.
Core Activities: Our core focus lies in the creation of advanced software solutions that cater to diverse business needs. Our expertise extends to industries such as sports facilities, medical centres, and transportation. Through our solutions, we bring efficiency, convenience, and precision to the booking experience and improved economics for all parties.
Optimizing Resources: Our software solutions are designed to optimize the allocation of resources. In sports facilities, we ensure that every booking maximizes facility usage and minimizes conflicts. Our software streamlines appointment scheduling, resource allocation, and client management, leading to enhanced operational efficiency. In the transport industry, our software enhances dispatching, route optimization, and customer engagement, resulting in better resource utilization.
Enhancing Marketing Potential: TECHARETE SYSTEMS' software solutions go beyond functional enhancements. We recognize the importance of marketing in today's competitive landscape. Our software includes features that empower businesses to showcase their services, promotions, and special offers, thereby increasing their marketing potential. This integrated approach enables our clients to not only manage bookings effectively but also to attract and retain customers more effectively.
Innovation and Growth: Innovation is at the heart of the Company. We pride ourselves on staying ahead of industry trends and technological advancements. Our dedicated team of experts, including software engineers, UI/UX designers, and data analysts, continuously explores new avenues to refine our solutions and introduce features that drive growth and innovation for our clients.
Collaboration and Partnerships: Collaboration is a cornerstone of our approach. We actively seek partnerships with industry stakeholders, valuing their insights and needs. By working closely with our partners, we co-create customized solutions that address specific challenges within each sector. Our collaborative spirit extends to businesses of all sizes, from startups to established enterprises.
In conclusion, Techarete Systems Ltd. is synonymous with innovation and transformation. Our software solutions are designed to optimize resources, enhance marketing potential, and elevate the booking experience across industries. With a strong commitment to excellence and customer success, we are excited to shape the future of booking systems and contribute to the growth of businesses across the globe.
One person will have to first buy the court, but the functionality I want is for that person to then be able to split the bill across the other players
Create a “My Bookings” link - that shows the bookings where the logged-user is one of the players (either player1, player2, player3 or player 4).
This view shows who has currently paid for the court (and the split after some reallocation) and includes a button that “Pays my share”,
That process involves the non-paying player(s) to send their share of the cost to the kitty of the person that paid the bill. It will shows as a like a TopUp on the account of the recipient and a debit on the Account of the sender
Email functionality to send a reminder to the non-payers
Pending
16.10
ATP tickets
include a link that contains the Wimbledon/French/Queens/Boodles tickets (and to tennis club site)
Import export to csv to aid importing of data
Complete
16.84
ClubSpark
Buy smart card per venue. Limit bookings to one per day and 5 per week per smart card to avoid scrutiny.
Add a Court Surface entity, containing court surface and also floodlight, so we can identify by court the surface and floodlight status - may not be consistent across all courts at a venue.
Show the court surface/floodlights details in the booking popup
Complete
17.19
Complex reservations
Allow users to book repeat reservations targeting mutliple venues, where their choice will prioritise either the venue or the times or the time on court
In the popup to book a court,in the title confim the venue and time (to reassure the user that they clicked the right button) and include the court surface and floodlight data
Where the surface and floodlight specs are consistent for all courts at a venue, display in the title. When different by court, display at the court level.
Complete
15.98
Bookings
Allow non-logged in users to book (ie straight to CC provider, take email)
Proposed solution is to scrape using a local copy of the site that posts the results to the live site
Question: How do we overcome the IP block that is applied to our site for the making of bookings? is the IP address already blocked? Note this will be far less frequent than the scrape, so we could use a dynamic IP address for that component of the site as the volumes will be far lower?
For the 129 MyCourts clubs, can you try to convert the Longitude and Latitude data that we captured into the “embedded html” needed for the maplink, so the map-marker icon works?
Can you run the postcode distance calculator for one player across all the MyCourt clubs to see if they all ok compute
The Map All button (showing the position of all the Active Courts on a single page) doesn’t seem to include the MyCourts clubs
MyCourt Scraper
Can you build a scraper to extract the Court (whether tennis, squash or badminton) Availability for the “MyCourts” clubs
Can you bring in the data as to whether it is available and the price if it is a given
Booking a Court (ClubSpark)
Can we test the client emails when you book a court
Can you look to see if you can complete the single-click book for the courts?
Complex reservation (multiple days where we book the first court that comes available)
Can we create a chron that runs through all the complex reservations and makes a booking (and cancels others) that meet the criteria. For example,
If the #1 preference is free it books that and cancels the others
Question: Do we wait for all the first choices to be available before ‘hitting’ a second choice? Or do we go through each hour and hitting the best one? (Do you see the problem?)
Perhaps we should make that a question : “Would you like us to immediately book a non-first preference option if there are some courts at your first preference still to be released? Be aware if we then wait those second/third/fourth choice options might have gone?”
We also have to think about how we use the bidding process...
For a single venue/hour…. Do we give them a choice of court, or any court?
And do we charge the full bid price, or the next best bid +£1? How will the client know? Do we show the current highest bid to encourage a higher bid- Yes? And do we tell the first bidder that they have been out-bid?
I think we just take the full amount and the client
Searching for tournaments (https://www.itftennis.com/en/tournament-calendar/world-tennis-masters-tour-calendar/)
When searching, you can filter/sort by date or country….. but not by Category, or Surface
The Name of the Tournament is always a concatenation of the City and the Category, so in effect is superfluous
Some of the Cities are in CAPS, some not.
The Country filter doesn't work terribly well. Specifically, if I am searching for "Cyprus" yet have selected a month where there are no tournaments in Cyprus, then the search fails to recognize Cyprus. In addition your search function can be configured to capture structured to look for other a couple of ways of spelling a country. For example, I looked for “England”, and found nothing. It should suggest Great Britain. Similarly United States doesn't trigger, the code is USA. However you can easily configure where your country database has 2 or 3 alternative search names (hidden) that will then show “Great Britain” if I were to type any of the following "UK, GB, England, Wales, Scotland, Northern Ireland etc)
Registering/Applying for a tournament
Checking out the draw for tournament (this page→https://www.itftennis.com/en/tournament/mt400-limassol/cyp/2024/s-mt400-cyp-2024-004/draws-and-results/)
Each tournament has a single URL for all the draws (Mens, Womens, Mixed…. All age groups), and they control the display with Javascript
That means you can't share the URL to direct family/friends/partners for specific draw. You have to tell them to navigate to say "Mens / Singles, Over 45)
Moreover, the site doesn't remember anything about the user, so refreshing the Age category resets the gender of the user.
I would recommend tracking the default with a cookie or alternatively providing a unique URL (trade-off is that it is slightly to flick between tournaments, but most users are not doing that)
The order of play page doesn't optimally use the screen width. On high resolution screens you could see 12 courts simultaneously, rather than clicking across screens
Similarly the court numbering at the top is confusing.
Put a 5-6 min gap between each article to avoid access denial
Complete
18.06
User-specific summary email
Once the broken scrapers are fixed, the main ‘ask’ is to make it “user-specific” (ie each user can define their own list of stories and categories to include in the summary email). So the following need to be linked to the logged user:
At the moment each of these fields are attached to the news article so we need to create a User-News field relationship to achieve this. Does that make sense to you?
Complete
18.31
Other
Make the Economic Stats scrape time 1am and 8.30am
Cron does not include FirstFT
Add a button to test that the FT.com login is working
Full content button (FT) only shows in first block (unassigned)
Upon user login, run a check on the user's logins and passwords and determine access accordingly
Issue is that the buttons trigger a refresh and slow.
Can one overcome this with a javascrpt flag and a press to do all button at the end
Users
Centrally scrape the content of the articles. Check once the login of the user at their login stage, and track if good. Then show in the title page if the login is confirmed as valid
Popup that checks that the LinkedIn login and password are successful
The first result should return the number of connections and estimate the time to download them, before proceeding.
Advise the user how long it will take to download and that a file will be emailed to them
Email csv file - one-step directly after the scrape - ie save a file in the database at the end of the scrap and email (ie merge the 3 buttons we have)
Create a template project that contains the basic structure of all the sites, so I can make changes centrally and have those changes become available to all the projects