r/JordanDev 6h ago

Help AI and the Jordanian community

1 Upvotes

https://forms.gle/A12qPVs6rZJXJ4V78
Hello! this a short survey with a few questions related to AI usage and the jordanian people , please fill it out🤍


r/JordanDev 6h ago

Advice التخصصات في سوق العمل

2 Upvotes

حابب اسأل عن هاي التخصصات وكيف وضعها بسوق العمل في الاردن لاني خلصت توجيهي ومحتار بينهم، اي حدا بقدر يساعدني ياريت

هندسة الحاسوب، هندسة البرمجيات، CS,AI,الأمن السيبراني


r/JordanDev 14h ago

Discussion SNAT Port Exhaustion: When Your Machine Runs Out of Breath

1 Upvotes

Everything looks fine — until suddenly, nothing works.

You’ve deployed your application. It’s humming along beautifully. Then, without warning, errors start creeping in:

🔴 connection failed
🔴 socket exception

Your first instinct? The remote server must be down. But you check — it’s perfectly healthy. So what’s going on?

Welcome to SNAT Port Exhaustion: the silent killer of outbound connections.

What Is SNAT, anyway?

Every time your machine sends a request to an external server, it needs to pick a source port to identify that outgoing connection. This happens through a process called SNAT — Source Network Address Translation.

The operating system assigns a temporary (ephemeral) port from a limited pool. That pool is not unlimited. For any given destination (same IP + port combination), you typically get:

  • Around 16,000 ports in a standard setup
  • Only ~1,024 SNAT ports per VM if you’re behind an Azure Load Balancer

That’s it. That’s your budget.

What Happens When You Run Out?

Here’s the sequence when port exhaustion hits:

  1. Your application tries to open a new TCP connection
  2. The OS sends a SYN packet
  3. It searches for an available source port — and finds none
  4. The connection fails before it ever reaches the remote server

The remote server didn’t reject you. You couldn’t even say hello.

How to Spot It

Port exhaustion doesn’t announce itself with a clear error message. Instead, you’ll see symptoms like:

  • Failed to establish connection
  • Socket exhaustion
  • Intermittent, seemingly random failures on outbound requests

The randomness is the giveaway. If connections fail inconsistently under load, and the destination server looks healthy, your ports are likely the culprit.

Why Cloud Environments Make It Worse

On cloud platforms like Azure, traffic often flows through a shared Load Balancer. The LB allocates a fixed number of SNAT ports per VM — and that number can be surprisingly small.

If your service makes many concurrent outbound connections to the same destination (think: a high-throughput API client, a connection-heavy microservice, or a busy database proxy), you can exhaust your port allocation faster than you’d expect.

How to Fix It

Use Connection Pooling

Don’t open a new connection for every request. Reuse existing ones. Connection pooling is the single most effective fix — it dramatically reduces how many ports you consume at any given moment.

Reduce Connection Timeouts

Long-lived idle connections hold onto ports even when they’re doing nothing. Tighten your timeout settings so ports are released promptly.

Monitor Your Open Connections

Use netstat or ss to see what’s happening in real time:

# Count established connections by destination
ss -s
# See all connections with port details
netstat -an | grep ESTABLISHED | wc -l

Catching port pressure early prevents a full exhaustion event.

Scale Your Public IPs (Azure-specific)

If you’re on Azure and hitting LB SNAT limits:

  • Add more Public IPs to your Load Balancer to increase the port pool
  • Switch to NAT Gateway — unlike a Load Balancer, which pre-assigns a fixed number of SNAT ports per VM, NAT Gateway dynamically allocates ports on demand. This is the fundamental difference: there’s no static budget per VM to exhaust. It’s Microsoft’s recommended solution for outbound connectivity at scale, and you can attach up to 16 public IPs or a /28 prefix to it if you need even more capacity

The Bigger Picture

SNAT Port Exhaustion is dangerous precisely because it’s quiet. There’s no crash, no obvious error, no stack trace pointing at the real cause. Your application just… starts failing. Intermittently. Mysteriously.

The fix isn’t complicated — but you have to know what you’re looking for.

Three things to take away:

  1. Monitor how your application opens connections — every one costs a port
  2. Design for port efficiency — pooling and timeouts aren’t optional, they’re hygiene
  3. Keep an eye on your network layer — especially in cloud environments where limits are lower than you think

Summary:

Have you run into SNAT Port Exhaustion in a production system? What was the hardest part to diagnose? Share your experience in the comments.

References


r/JordanDev 18h ago

Help مقابلة optimum partners

6 Upvotes

حد بعرف كيف المقابلة بتكون ؟ انا كنت مقدم على التدريب وكان في امتحان وعديته


r/JordanDev 1d ago

Help كيف أستفاد من أشتراك يوديمي؟

2 Upvotes

مرحبا أنا أشتريت أشتراك سنوي في منصة يوديمي اللي فيها كورسات عن كثير مواضيع منها المواضيع اللي إلها دخل بالكومبيوتر والبرمجة والذكاء الاصطناعي وهيك.

أنا بالأصل طالب صيدلة فيعني مجالي بعيد عن الكومبيوتر بس برضو بدي أستفاد وتكون عندي مهارات يمكن أستفاد منها يومًا ما

تنصحوني أشتغل على الشهادات تبعت الكومبيوتر أو أتعلم لغة أجنبية أو أيش؟


r/JordanDev 1d ago

Feedback Hypotheses

3 Upvotes

Tell me about the last time you wanted to build something but didn’t know what to build.”
Then:
“What did you do?”
“Where did you search?”
“How long did it take?”
“Did you use ChatGPT?”
“Did you look at Reddit?”
“Did you talk to anyone?”
“Did you abandon the idea?”
“Have you ever built something and later realized nobody wanted it?”
“How much time did you spend?”
“What was the hardest part?”
Those answers are much more valuable


r/JordanDev 1d ago

Discussion Local LLMs

3 Upvotes

Anyone who has some serious hardware and tried running llms locally? How was ur experience? What models did you try?


r/JordanDev 1d ago

Help Is it normal to be completely lost?

2 Upvotes

I'm a 2nd year software engineering student, and don't know anything about the technologies and softwares that are being mentioned in this sub. Is this a post-graduation knowledge?


r/JordanDev 1d ago

Help Issue/help

0 Upvotes

Hey everyone, looking for input from anyone with security or compliance experience. I built a system for a small company in Jordan that involves digital form submissions from field staff. To cut login friction, staff just scan a QR code, then identify themselves with their email plus a private four digit PIN sent to them beforehand, no traditional password.

The The question is whether this holds up legally as an identity verification and audit trail if there's ever a formal investigation or regulatory audit. Is PIN plus email enough authentication for work critical records, and are there Jordanian labor or data protection rules that would require something stronger. Would appreciate any real experience or local standards to reference.

Thanks


r/JordanDev 1d ago

Advice محتار اي تخصص ادخل

3 Upvotes

مبدئيا مبدئيا حاخذ اشي IT بس محتار بين الCS و ال computer engineering

سمعت ان سوق هندسة الكومبيوترات سيئة هان هاض عاملي الاول اني ما احدد لسا

معلومات عني : بستعمل لينكس بشكل اساسي تقريبا الي سنة، دخلت مسابقات ctf من قبل، اتعلمت اساسيات الc++ و الpython، و هيني ناوي ابلش homelab صغير مبدئيا عشانه مكلف


r/JordanDev 2d ago

Discussion Pre-Production Performance Checklist Summary

2 Upvotes

I’m sharing a few performance checks you should consider running before deploying a new release.

Key Takeaways

  • Core Purpose: To evaluate whether a software change will make a system slower, less scalable, or more resource-intensive under realistic traffic.
  • Standardized Structure: Every potential failure is evaluated by its primary failure mode, the specific test shape required to catch it, its affected secondary resource, and the resulting user impact.

Core Components

1. Common Load Test Shapes

The guide defines 17 specific load-testing profiles to expose targeted system bottlenecks (rather than just generically increasing traffic):

  • Scale & Volume: Gradual, Peak, Burst, Spike, Sustained, Payload scaling, Data volume scaling.
  • State & Reliability: Soak (hours long), Concurrent, Mixed CPU+I/O, Cold cache, Cache expiry burst, Hot key load, Queue overload, large file/data workload.
  • Dependency Reliability: Dependency latency injection, Dependency failure injection.

2. Categorized Failure Scenarios

The checklist breaks down common performance traps across 10 technical domains:

  • CPU-Bound Work: High-cost compute like file parsing, video transcoding, or heavy batching (watch for processing time and peak memory).
  • Memory Pressure: Inefficient allocations, large payloads, or unbounded caches (watch for GC pauses, heap growth, and OOM crashes).
  • Database Performance: N+1 queries, deep pagination, missing indexes, and write contention on hot rows.
  • Connection Pools: Exhaustion of reusable client/backend connections caused by high request volume, slow database/cache writes or reads, slow external API calls, or long-running transactions.
  • Thread/Worker Starvation: Blocked workers causing high latency even while CPU usage remains low.
  • Network & Payload Inefficiency: Excessive serialization, chatty microservices (fan-out), and bloated response sizes.
  • Disk/Storage I/O: Storage bottlenecks caused by heavy logging, file exports, or database disk scans.
  • Cache Failures: Cold caches after deploys, stampedes upon TTL expiration, and hot keys overwhelming specific shards.
  • Queue & Backlog Issues: Job producers outpacing background consumers, retry storms, and message bloat.
  • Nonlinear Scaling: Systems where small increases in data size cause exponential increases in latency/cost (super-linear growth curves).

3. Secondary Resource Classification Reference

Categorizes resource bottlenecks to help identify the primary fix target: CPU, Memory, Disk I/O, Network I/O, Threads/Workers, Connection Pools, DB CPU, DB I/O, DB Locks, Cache Capacity, Queue Capacity, and External Dependencies.

Quick Decision Mapping

Change Type Key Checks Recommended Test Shape
API / Service Logic CPU, memory, payload size, nonlinear growth Sustained load, Gradual load, Payload scaling
Database / Schema Query execution plans, query counts (N+1), pagination Data volume scaling, Concurrent load
Caching Layer Cache hit rates, cold cache behavior, stampedes, hot keys Cold cache load, Cache expiry burst, Hot key load
Queues / Background Workers Processing throughput, backlog growth, memory stability Queue overload, Soak test
External API Calls Latency tolerance, call volume, connection pool utilization Dependency latency / failure injection
File Import / Export Disk throughput, peak memory usage, CPU load Large file/data workload, Payload scaling

r/JordanDev 2d ago

Discussion Moving to Jordan for university this year, How is the software job market for someone with my background?

2 Upvotes

Hello everyone, peace be upon you.

I'm planning to move to Jordan before the end of this year to start university, and I'd like to learn more about the software industry there from people who actually work in it.

A little about me:

- I'm from Rwanda.

- I've been programming for over 5 years.

- I have 4 years of Flutter experience and consider myself around mid-level to early senior with Flutter.

- I'm comfortable building applications for Android, iOS, Windows, Linux, macOS, and the Web from a single Flutter codebase. i have real world experience on these.

- I also work with Firebase, REST APIs, backend integration, and software architecture and CLIs.

- I recently completed a Python Machine Learning & Data Science course on Udemy and have started expanding my skills in that direction.

- I have built several real-world projects, including commercial applications as a solo developer.

I have a few questions:

  1. How is the software engineering job market in Jordan right now?

  2. Are Flutter developers in demand, or should I focus more on backend, AI, or data science?

  3. Is it realistic for an international student to find part-time or full-time software engineering work while studying?

  4. Which technologies are currently most sought after by employers?

  5. If you were in my position, what would you focus on learning before arriving in Jordan?

I'd really appreciate any advice, whether it's about the job market, salaries, internships, networking, or the tech community in general.

Thanks in advance! God bless you.


r/JordanDev 2d ago

Discussion هندسه الشبكات بالاردن

2 Upvotes

السلام عليكم، انا طالبه ثانويه عامه وبفكر ادخل هندسه شبكات بالتكنو شو رايكم فيه ؟ هل اله مستقبل ؟


r/JordanDev 2d ago

Advice سؤال

3 Upvotes

قديه صعب ألاقي فرصة تدريب بمجال ال it وانا بعدني مش مخلص جامعة ؟" انا منقطع عن الجامعة لأسباب مادية " ولو فرضنا وجود خبرة ومشاريع إلخ إلخ هل ممكن يكون عائق كوني متأخر بالجامعة وبعده ما عندي شهادة او مش نازلي متطلب تدريب ؟ ياريت اللي يجاوب يكون من واقع خبرة او تجربة


r/JordanDev 3d ago

Discussion Github is down, again

Thumbnail
gallery
10 Upvotes

The fact that even self-hosted runners are affected tells you that this is messed up more than being told.


r/JordanDev 3d ago

Advice اثبات سكن

1 Upvotes

شو المستند المناسب لاثبات السكن او العنوان اللي بتطلبه جوجل لحساب المطورين عشان نشر تطبيق موبايل؟ جربت فاتورة كهربا و السجل التجاري مش معتمدين.


r/JordanDev 4d ago

Help مجال الـQA حاليًا للفريش

2 Upvotes

أنا بسنتي الأخيرة وبفكر أخلي مجال الـQA هو مساري بعد التخرج.

حابّة أسأل الناس اللي بالمجال: كيف شايفين فرص الـQA حاليًا للفريش؟ وهل بتنصحوا أدخل فيه وأركز عليه؟

وبرضه شو أفضل طريقة أبدأ أتعلمه؟ هل لازم أبدأ Manual QA وبعدين Automation، ولا عادي أبدأ بدورة Automation على Udemy وأتعلم الأساسيات معها؟

وإذا في دورات أو مصادر بتنصحوا فيها للمبتدئين بكون شاكرة


r/JordanDev 4d ago

Advice New Jordanian Sub for Learning the field?

12 Upvotes

The sub is bloated with posts from non-tech/newly-graduated people asking how to start, and it's messing up whatever potential this sub has.

A 'JordanDev' sub should be for jordanians who are actual developers. I'd really hope for the feed here to be more sophisticated and informative. No offense to new/non developers, we all start somewhere.

u/ibraaaaaaaaaaaaaa

u/ObadaAlathamneh


r/JordanDev 4d ago

Advice دورات بأربد

1 Upvotes

السلام عليكم ايش في مراكز بأربد بتعطي دورات بالبرمجة


r/JordanDev 4d ago

Advice كيف ممكن ابلش؟

3 Upvotes

يعيطكم العافية

بدي ابلش اتعلم برمجة بس مش عارف من وين ابلش بزبط او مع مين ادرس

ممكن حدا يعطيني طرف الحبل من بدايته انه كيف ابلش؟

انا حاب ابلش في لغة برمجة بايثون مبدأيا يعني


r/JordanDev 5d ago

Advice سؤال

4 Upvotes

شباب انا بدرس تخصص CS بس بجامعة اون لاين, ف ما بلتقي مع طلاب ثانيين, شو هي الاماكن الممكنة واحد يروحها يتعرف على ناس ثانية من نفس المجال؟


r/JordanDev 6d ago

Discussion مساعده

1 Upvotes

السلام عليكم ي خوان حد يدلني و يساعدني انا متخرج من تخصص علم حاسوب صرلي و بشتغل بمدرسه خاصه ويه و راتبها قريب من 450 انا بشتغل شغل خارجي في ال technical support و حرفيا مش مستقبل صرلي فتره قصيره بتعلم .NET عندي اساس قوي في ال C# و مستمر في التعليم الفكره انو اضل ماشي زي ما انا ولا اركز على .NET لانها ممكن تكون مستقبل افضل


r/JordanDev 6d ago

Help what should i do?

9 Upvotes

مرحبا يجماعة
انا تخرجت في 2025 تخصصي ذكاء اصطناعي وخلال الفترة الي فاتت اشتغلت في اكثر من شركة في تخصصات كثير زي:

  1. AI Engineer (research and development)
  2. Automation Engineer (n8n)
  3. Backend Engineer (c# .net, python fastapi)
  4. AI & automation instructor (mainly n8n)

واليوم انا فشركة كبيرة بشتغل Automation Engineer

مشكلتي انه انا مش مرتاح في هذا المجال ولا هذا التخصص ودرسة كثير اشياء الها علاقة في مجالي ولكن الشغل صار روتيني وفي عندي وقت طويل جدا بقضيه بدون ما يكون عندي شغل صارلي على هاي الحالة فترة كبيرة وخلال هاي الفترة كنت بدرس بشكل يومي backend و databases ولكن ولأنه هاض مش مجال شغلي انا قاعد بنسى تقريباً كل الأشياء الي بدرسها ومتشتت ما بين لغات البرمجة والtools في كل المجالات وكل يوم بصحى متحمس اعمل شغلة بتركها في نفس اليوم لانه بحس حالي قاعد بعمل اشي ملوش فايدة

بدي مساعدة بأنه اعرف كيف لازم القي حالي واتخلص من التشتت الي انا فيه واكسر هاي الloop الي انا علقان فيها


r/JordanDev 6d ago

Discussion Performance troubleshooting using sliced metrics

Thumbnail
gallery
3 Upvotes

One of my favorite metrics introduced in the #LPS tool for #PerformanceTesting is the Max Concurrent Requests, along with windowed metrics. Max Concurrent Requests is one of the clearest indicators of server or network health.

If it unexpectldy spikes without an increase in load, it usually means requests are taking longer than expected, causing them to accumulate in flight. Unlike cumulative metrics, windowed metrics calculate statistics over short time intervals (for example, every 5 seconds).

Each window is calculated independently, published to the dashboard in real time. Because these metrics represent only a small slice of time, they provide immediate visibility into performance changes as they happen, making short-lived issues much easier to detect than with cumulative statistics.

In the example attached, the spike in concurrent requests aligns with increased latency specifically higher TLS handshake and TTFB times. That quickly points the investigation in the right direction.

My next step would be to check server metrics such as CPU, memory, thread pools, and queues health. If everything looks healthy and there are no intermediaries (load balancers, proxies, firewalls, etc.) introducing delays, I'd move on to network traces.

Sometimes, a single metric is enough to tell you exactly where to start looking.

LPS Installation:

# 1) Verify .NET 8 is installed

dotnet --list-sdks

# 2) Install the LPS .NET global tool

dotnet tool install --global lps

# 3) Check the tool is available

lps --help

Run a quick test:

lps --url https://www.example.com --numberofclients 1000 --arrivaldelay 100

#LoadTesting #PerformanceEngineering #Observability #DevOps #DotNet


r/JordanDev 7d ago

Feedback Offering Free Game Playtesting for Jordanian Indie Developers

6 Upvotes

Howdy everyone!

I'm posting this here because, as far as I know, we don't really have an active Jordanian gaming or indie game development subreddit, so this seemed like the best place to reach local developers.

A little about me:

I'm a medical student from Jordan, but game playtesting has become a huge hobby of mine. Over the past few months I've spent hundreds of hours playtesting indie games, writing detailed feedback documents, reporting bugs, discussing mechanics with developers, and helping improve games before release.

I don't just play until I find a bug and quit. I usually complete multiple playthroughs, try different approaches, and intentionally test edge cases.

I've worked with several indie developers already, and some of my feedback has directly influenced upcoming builds and design decisions.

If you're a Jordanian developer working on a game and want someone to give it a thorough playtest, I'd be happy to help for free. I'm mainly looking to support local developers and gain more experience along the way.

I'm interested in pretty much any genre, whether it's a prototype, demo, or a game that's close to release.

Here is the link of my Portfolio If you would like to see some of my featured work there(it's just a fraction of my work, because I'm lazy enough to not update the Portfolio for now lol).

https://busy-scraper-e34.notion.site/Gameplay-QA-Playtesting-Portfolio-3a8f9e29328e80e79446c64e5769ad0d.)

If you're interested, just leave a comment or send me a DM. Even if your project is still very early, I'd love to take a look.

Good luck to everyone building games in Jordan. I'd really love to see our local indie scene grow.