Staż Programistyczny – Pierwsze Kroki Na Drodze Zawodowej Młodego Programisty

Cześć Właśnie pojawił się nowy artykuł na blogu Modest Programmer. W tym artykule poruszyłem temat stażu w kontekście programowania. Opowiem o różnych ścieżkach początkujących programistów. Odpowiem na pytania, czy warto zacząć swoją karierę programistyczną od stażu, gdzie szukać ofert stażów programistycznych, co możesz dzięki nim zyskać i czy możliwe jest uzyskanie pracy po ukończonym stażu. Zapraszam

Więcej: https://www.modestprogrammer.pl/staz-programistyczny-pierwsze-kroki-na-drodze-zawodowej-mlodego-programisty

#programowanie #programista #nauka #
źródło: comment_1651213309sLEtlcD7IVOhWLoraCuH4d.jpg
W Jaki Sposób Programista Powinien Dbać o Rozwój Swoich Umiejętności?

Cześć Właśnie pojawił się nowy artykuł na blogu Modest Programmer. W tym artykule poruszę temat podnoszenia swoich kompetencji przez programistę. Opiszę dlaczego moim zdaniem każdy programista powinien uczyć się i dbać o rozwój swoich umiejętności przez całą karierę zawodową. Przedstawię także kilka przykładów w jaki sposób najlepiej to robić. Zapraszam

Więcej: https://www.modestprogrammer.pl/w-jaki-sposob-programista-powinien-dbac-o-rozwoj-swoich-umiejetnosci

#programowanie #programista #nauka #naukaprogramowania #programista15k #csharp #dotnet #informatyka #it #
źródło: comment_1650959675m9IjgWQKGlcQsgwfbXfEWw.jpg
Humble Bundle z książkami wydawnictwa Apress. Głównie o technologiach związanych z .NET, ML.NET, Cpłotek, TypeScript, Azure, Github.

26 książek za £14!

Pełna lista:

Practical Entity Framework Core 6

.NET Developers Guide to Augmented Reality in iOS

Lean Software Systems Engineering for Developers

Pro Cryptography and Cryptanalysis

Introducing Distributed Application Runtime (Dapr)

Pro ASP.NET Core Identity

ML.NET Revealed

Visual Studio Code Distilled

The Complete ASP.NET Core API Tutorial

Introducing .NET 6

Building Single
Mirki próbuję ogarnąć w praktyce Event Sourcing i chyba jetem na to za tępy. Obejrzałem z 20 fimlików, przeczytałem też sporo artukułów, a gdy chciałem sobie to przećwiczyć na jakimś prostym przykładzie to nie umiem tego rozkminić.

Powiedzmy że robię sobie encję:

public class BankTransaction : Aggregate
{
public Guid Id { get; set; }
public BankAccount account { get; private set; }
public TransactionAmount
amount { get; private set; }
public
@alochomora12: No to wchodzimy w zagadnienie CQRS. Dla ścisłości, można mieć ES bez CQRS, ale moim zdaniem to głupota. W tym przypadku powinieneś mieć dwa modele. Pierwszy do zapisu (Write) i drugi do odczytu (Read), czyli coś w tym stylu co pokazałeś, bo bez sensu jest targanie agregatu i wszystkich jego zdarzeń żeby zrobić projekcję na potrzeby wyświetlenia jakiejś prostej listy.

Ja w warstwie Read stosuję zwykłe DTOsy i moje zapytania
Próbuję przy pomocy LINQ w trakcie iteracji foreach posortować malejąco rekordy na liście, wziąć pierwszy rekord z góry a następnie go przyciąć substringiem jeśli ma powyżej 10 znaków. No i generalnie to mi wychodzi, tylko ten kod wywali się w przypadku rekordu krótszego niż dziesięć znaków. Myślę, że mógłbym zastosować tutaj metodę Math.Min, ale przez prawdopodobnie nieprawidłową składnię wywala mi błąd 'no accessible extension method 'Length' accepting first argument of type Message'
Aktualnie pracuje jako administrator ale w praktyce większość czasu jako wdrożeniowiec systemów ERP i osoba odpowiedzialna za pracę z bazami danych (pisanie procedur, funkcji na potrzeby klientów systemów ERP).
Bardzo polubiłem C# .NET uczę się go prywatnie i myślę o zmianie właśnie na obszar dev. Znalazłem kilka ofert w których też mile widziana jest znajomość ERP czy też baz.
Moje pytanie dotyczy jak wygląda sprawa tego mitycznego portfolio. Jak jest z tym
@grap32: Być może jestem zbiasowany, ale w żadnej z firm w których pracowałem nikt przy rekrutacji nie patrzył na zaangażowanie i podstawy przekute w praktykę. Ja też jak robię rozmowy to niespecjalnie wchodzę na githuba kandydata - nie mam na to czasu, nie mam też absolutnie żadnej gwarancji, czy kod tam zawarty to robota własna kadydata, a analizowanie go tylko po to, żeby potem z kandydatem o nim rozmawiać brzmi jak
Od kilku godzin czytam o Clean Architecture i nie mogę skumać jednego konceptu. Gdzie przechowywać implementację metod np: pobierania elementów z bazy danych i jakieś operacje na nich.

Przykładowo w jednym repo na GitHub (https://github.com/jasontaylordev/CleanArchitecture/tree/main/src) znalazłem, że implementacja trzymana jest w Application + udostępnia Interfejs z operacjami na bazie, a interfejs implementowany jest w warstwie Infrastructure już w zależności jaki dostawca bazy jest wybrany. Encje trzymane są w warstwie Domain.

Ale
Wkrótce mam pierwszą zdalną rozmowe kwalifikacyjną na platny staż. Ma ktos jakies doświadczenie, jak bardzo szczegółowe sa takie rozmowy jezeli chodzi o wiedzę techniczną? Niby wlasne projekty mam, ale gdy tak pomyślę, ze mogą mnie zagiąć jakąś łatwą teorią to mnie stres paraliżuje...

#csharp #programowanie
@grap32: Klasyka w stylu: co to property, roznice miedzy klasą abstrakcyjna a interfejsem, asynchroniczność, SOLID. Spytają czy znasz jakiś wzorzec projektowy i jak go zastosować. Coś z baz danych pewnie: czym jest kursor, widok, indeks. Coś z frejmworku zależnie od tego co będziesz tam robi: coś z DI, routing. Czy wiesz co to ORM albo REST.

Raczej nie będą Cię dojeżdzać niczym mega szczegółowym.
@alochomora12:

jeden raz pytanie co to drzewo binarne


Zawsze zastanawiam się z jakiej planety przybył taki rekruter. Dobrze że nie zapytał o listę podwójnie łączoną. Liczba sytuacji w ciągu ostatnich 15 lat pracy jako programista kiedy musiałem użyć drzewa binarnego lub listy podwójnie łączonej: 0.

Jak mnie ktoś zapyta, to odpowiadam, że to takie starożytne struktury danych do męczenia studentów na kolosach. I nie, nie twierdzę że znajość struktur danych nie
Dzisiaj trochę ofert z kategorii #dotnet i pokrewnych, dla chętnych na przeprowadzkę do #szwajcaria lub #niemcy ( ͡º ͜ʖ͡º)

(SwissDevJobs.ch | LinkedIn | Twitter | Facebook)
(GermanTechJobs.de | LinkedIn | Twitter | Facebook)

Tag do obserwowania / czarnolistowania: #swissdevjobs

---------------------------------------------------------------------------

IoT Software Engineer | Loepfe Brothers Ltd. 
[Wetzikon] [95’000 - 125’000 CHF] [Regular] [Full-Time] [English]
https://swissdevjobs.ch/jobs/Loepfe-Brothers-Ltd-IoT-Software-Engineer

Product Owner IoT Solutions | Loepfe Brothers
źródło: comment_1649927340EtVzhuCjdhXPyJ8pT48x1Y.jpg
#anonimowemirkowyznania
Mirki, niedługo mi stuknie 2 lata expa w #dotnet #csharp Ile realnie zawołać podwyżki? Teraz jest 6,5k brutto () (miasto 15k ludności, niby korpo)
#programista15k #programistanajnizszakrajowa

Kliknij tutaj, aby odpowiedzieć w tym wątku anonimowo
Kliknij tutaj, aby wysłać OPowi anonimową wiadomość prywatną
ID: #62566e257c53968b7088dfbe
Post dodany za pomocą skryptu AnonimoweMirkoWyznania ( https://mirkowyznania.eu ) Zaakceptował: sokytsinolop
Wesprzyj projekt
Wypalenie Zawodowe Wśród Programistów

Cześć Właśnie pojawił się nowy artykuł na blogu Modest Programmer. W tym artykule chciałem poruszyć dość ważny problem wśród programistów, to znaczy wypalenie zawodowo. Opisałem czym jest wypalenie zawodowe, jakie są jego przyczyny, jak to wygląda wśród programistów i jak sobie z nim radzić. Zapraszam

Więcej: https://www.modestprogrammer.pl/wypalenie-zawodowe-wsrod-programistow

#programowanie #programista #nauka #naukaprogramowania #programista15k #csharp #dotnet #informatyka #it #szkolenia
źródło: comment_1649744175l4fXPhpEMxwRFHMO2ZFxWl.jpg
#csharp #programowanie
Czy istnieje coś takiego jakiś code formatter dla C# jak prettier dla Javascriptu? W jsie sobie normalnie klikam save i wszystko mi się ładnie układa, a tutaj jest jakiś upośledzony formatter, który tylko nieliczne rzeczy poprawia...
#anonimowemirkowyznania
Wiem, że porównania języków są z reguły bez sensu, bo zazwyczaj są używane w różnych zastosowaniach(chociaż java i c# mają w miarę podobne). Mimo to zaryzykuję i zadam te pytanie. Dlaczego java jest szkalowana, szczególnie w środowisku c#? Pytam całkiem serio, bo często to widzę w jakichś rozmowach i zazwyczaj nie jest to trolling. Słyszałem różne argumenty za java i c#, ale w sumie nigdy nie widziałem większych konkretów niż "c#
Pytanie całkiem serio. Czemu java jest szkalowana, szczególnie przez środowisko c#? Często widzę jakieś śmieszki heheszki o javie, ale nigdy nie widziałem sensownych argumentów za lub przeciw. Teraz zastanwiam się czy takie śmieszki heheszki to głównie programiści 15k z jakiejś licbazy czy rzeczywiście ma to sens? Wiem, że porównywanie języków to bezsensowna rzecz, ale niektóre zastosowania javy i c# pokrywają się.
#programowanie #java #csharp #programista15k
#programowanie #csharp

Jest może ktoś w stanie polecić jakieś książki / szkolenia udemy / youtube czy podobne zajmujące się tematyką architektury oprogramowania żeby móc się trochę samodoszkolić? Od razu mówię że w dupie mam jakiekolwiek certyfikaty, interesuje mnie tylko wiedza.

Od około 1.5 roku jestem nieco dorywczo "architektem niższego szczebla", czyli nie zajmuję się architekturą całego ekosystemu aplikacyjnego, natomiast projektuję i wykonuję składowe tego ekosystemu w zakresie który akurat mi przypadnie, bo
@LazyInitializationException: nie żartuj xD

@Khaine: olej szkolenia, to strata kasy. I tak większość materiałów pochodzi z książek/dokumentacji.

- Fundamentals of Software Architecture: An Engineering Approach, Neal Ford
- Software Architecture: The Hard Parts, Neal Ford
- Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith, Sam Newman
- Building Microservices, Sam Newman
- Designing Data-Intensive Applications, Martin Kleppmann
- API Design Patterns, JJ Geewax
- Building Event-Driven Microservices, Adam Bellemare
Mirki, wreszcie udało się!! ʕʔ Za dwa tygodnie rozpoczynam pracę jako junior .NET developer, czyli wreszcie zaczynam robić faktycznie to - co jest moim hobby i sprawia mi frajdę ( ͡° ͜ʖ ͡°) Dla potomnych wrzucam info jak wyglądał proces mojej nauki + poszukiwania pracy i ile co trwało:

- start nauki programowania: 5 kwietnia 2020 (pamiętam dobrze, bo wtedy 1. przypadek COVID w
@Priya: @Priya: tak, po technikum ( ͡° ͜ʖ ͡°). Najbardziej bałem się, że właśnie na rozmowach będzie wymagana wiedza teoretyczna (taka zdobyta głównie na studiach) np. definicja klasy abstrakcyjnej wyuczona z Wiki czy jakieś algorytmy i na tym polegnę.

Na jednej rozmowie miałem pytanie "co to jest klasa abstrakcyjna", ja odpowiedziałem że tak teorię cieżko mi będzie powiedzieć. To chłop mi mówi, że nie obchodzi
Pytanie do juniorów o stawkę jaką macie obecnie niezależnie od technologii - interesuje mnie UoP (jak jestescie na b2b to mniej wiecej mozecie przeskalowac to na UoP).

#programowanie #java #csharp #javascript #frontend #backend #python #cpp #programista15k

Zarobki UoP Junior (wliczone KUPy)

  • 0-6000 PLN brutto 37.3% (75)
  • 6001-7000 PLN brutto 14.9% (30)
  • 7001-8000 PLN brutto 9.0% (18)
  • 8001-9000 PLN brutto 9.5% (19)
  • 9001-10000 PLN brutto 2.0% (4)
  • 10001+ PLN brutto 27.4% (55)

Oddanych głosów: 201

@XKomandos: Szybszy cold start, redukcja powtarzalnego kodu, zmniejszenie zależności od zewnetrznych assembly, mniej refleksji.

Np regexy w .NET7 będą oparte o generatory. Wykorzystywane jest to też w popularnej bibliotece Refit do budowania httpclienta.
Zrobiłem listę 64 różnych języków programowania i w tagu:
#bitwyjezykowe
będziemy sobie je porównywać który lepszy
W lewym narożniku #cpp najbardziej znany z synów C, spotykany wszędzie tam gdzie trzeba dużej wydajności
W prawym narożniku #csharp Albo "Microsoft Java" przyjemny język obiektowy
głosowanie plusami w kometarzach
źródło: comment_1649252954B5TkPyquR9wGJckESZMClN.jpg
Jeśli tworzę endpoint API, który ma zwrócić obiekt o danym id, a chcę aby id było przekazywane jako parametr np: api/products/5a98be94-3b25-430e-82a3-dbabf9c4854c to w kontrolerze mogę zwalidować czy parametr jest poprawnym Guidem, czy powinienem zrobić to gdzieś indziej? Taki kod będzie ok?

[HttpGet]
[Route(ApiRoutes.Products.GetById)]
public async Task> Get(string id)
{
if (!Guid.TryParse(id, out Guid idGuid))
{
return BadRequest();
}
var product = await Mediator.Send(new GetProductByIdQuery() {Id = id});
return product != null ?
@Priya: Kiedy mam kilka projektów(web api) które korzystają ze wspólnych serwisów domenowych i nie mam żadnej rejestracji opartej na konwencji to tracę ~30% czasu swojego developmentu żeby to ręcznie zarejestrować. Czytałem kiedyś że korzystanie z kontenera bez konwencji mija się z celem i już lepiej stosować wtedy dependency inversion na poziomie composition root ręcznie.
@Saly: Zgadzam się, to dobre rozwiązanie w wypadku braku kontenera, albo swiadomej decyzji żeby go nie używać. Jest nawet taki wykres z jednej książki złożoności do zysku. Na tym wykresie brak kontenera i ręczny composition root ma niską złożoność i wysoki zysk. Ręczna rejestracja w kontenerze ma niski zysk srednią złożoność. Automatyczna rejstracja ma wysoki zysk i wysoką złożoność. Oczywiście nie są to dane naukowe tylko zdanie autora książki - czyli